From cb403bf2f3ad4170fab8e9a7c2fd84dcf38192bb Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Fri, 22 Feb 2019 09:13:02 +0400 Subject: [PATCH] Initial commit --- .gitlab-ci.yml | 25 +++++++++++++++++++++++++ Dockerfile | 25 +++++++++++++++++++++++++ ci/set_docker_tag.sh | 7 +++++++ 3 files changed, 57 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 Dockerfile create mode 100644 ci/set_docker_tag.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..c1ebe6e --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,25 @@ +image: docker:stable + +variables: + DOCKER_HOST: tcp://docker:2375/ + DOCKER_DRIVER: overlay2 + CONTAINER_NAME: lab.wtfteam.pro:4567/containers/tdlib + +services: + - docker:dind + +stages: + - build + +before_script: + - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY + +build: + stage: build + script: + - source ci/set_docker_tag.sh + - docker build -t $CONTAINER_NAME:$DOCKER_TAG . + - docker push $CONTAINER_NAME:$DOCKER_TAG + only: + - tags + - master diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..52de224 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,25 @@ +FROM alpine as builder + +ENV TDLIB_VERSION=1.3.0 + +RUN apk update && apk add gperf alpine-sdk openssl-dev git cmake zlib-dev + +WORKDIR /tmp/_build_tdlib/ + +RUN git clone https://github.com/tdlib/td.git /tmp/_build_tdlib/ +RUN git checkout v${TDLIB_VERSION} + +RUN mkdir build +WORKDIR /tmp/_build_tdlib/build/ +RUN cmake -DCMAKE_BUILD_TYPE=Release .. +RUN cmake --build . +RUN make install +RUN rm -rf /tmp/_build_tdlib/ + +FROM alpine + +LABEL maintainer="vladimir@hodakov.me" + +RUN apk update && apk add --no-cache gperf openssl-dev git cmake zlib-dev + +COPY --from=builder /usr/local/lib/libtd* /usr/local/lib/ diff --git a/ci/set_docker_tag.sh b/ci/set_docker_tag.sh new file mode 100644 index 0000000..2d9510b --- /dev/null +++ b/ci/set_docker_tag.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +if [[ $CI_BUILD_REF_NAME == "master" ]]; then + export DOCKER_TAG=latest; +else + export DOCKER_TAG="${CI_BUILD_REF_NAME}"; +fi