104 lines
2.6 KiB
YAML
104 lines
2.6 KiB
YAML
stages:
|
|
- prebuild
|
|
- build
|
|
|
|
cache:
|
|
key: "$CI_PROJECT_NAME-cache"
|
|
paths:
|
|
- images
|
|
|
|
.build_docker_images:
|
|
image: docker:stable
|
|
before_script:
|
|
- docker info
|
|
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
|
|
- chmod 0755 ./images_build/client/dign_client/bin/wait-for
|
|
- chmod 0755 ./images_build/server_web/certs/tool
|
|
tags:
|
|
- share
|
|
|
|
.build_rpm:
|
|
image: "git.mesalab.cn:7443/mesa_platform/build-env:self-test-env"
|
|
variables:
|
|
GIT_STRATEGY: "clone"
|
|
BUILD_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/
|
|
TESTING_VERSION_BUILD: 0
|
|
before_script:
|
|
- dockerd > /dev/null &
|
|
- docker info
|
|
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
|
|
- mkdir -p $BUILD_PADDING_PREFIX/$CI_PROJECT_NAMESPACE/
|
|
- ln -s $CI_PROJECT_DIR $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
|
|
- cd $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
|
|
- chmod +x ./ci/travis.sh
|
|
tags:
|
|
- share
|
|
|
|
images_build:
|
|
stage: prebuild
|
|
extends: .build_docker_images
|
|
variables:
|
|
CLIENT_IMAGE_TAG: dign-client:latest
|
|
SERVER_WEB_IMAGE_TAG: dign-server-web:latest
|
|
SERVER_DNS_IMAGE_TAG: dign-server-dns:latest
|
|
script:
|
|
- mkdir -p images
|
|
- rm -rf images/*
|
|
- docker build -t $CLIENT_IMAGE_TAG -f ./images_build/client/Dockerfile ./images_build/client/
|
|
- docker save $CLIENT_IMAGE_TAG > images/client.tar
|
|
- docker build -t $SERVER_WEB_IMAGE_TAG -f ./images_build/server_web/Dockerfile ./images_build/server_web/
|
|
- docker save $SERVER_WEB_IMAGE_TAG > images/server_web.tar
|
|
- docker build -t $SERVER_DNS_IMAGE_TAG -f ./images_build/server_dns/Dockerfile ./images_build/server_dns/
|
|
- docker save $SERVER_DNS_IMAGE_TAG > images/server_dns.tar
|
|
|
|
|
|
feature_branch_build:
|
|
stage: build
|
|
variables:
|
|
PACKAGE: 1
|
|
TESTING_VERSION_BUILD: 1
|
|
extends: .build_rpm
|
|
script:
|
|
- ./ci/travis.sh
|
|
dependencies:
|
|
- images_build
|
|
except:
|
|
- tags
|
|
- /^dev-.*$/i
|
|
- /^rel-.*$/i
|
|
- /^master.*$/i
|
|
|
|
|
|
develop_build:
|
|
stage: build
|
|
variables:
|
|
PACKAGE: 1
|
|
UPLOAD: 1
|
|
TESTING_VERSION_BUILD: 1
|
|
PULP3_RPM_REPO_NAME: tsg-testing-x86_64.el7
|
|
PULP3_RPM_DIST_NAME: tsg-testing-x86_64.el7
|
|
extends: .build_rpm
|
|
script:
|
|
- ./ci/travis.sh
|
|
dependencies:
|
|
- images_build
|
|
only:
|
|
- /^dev-.*$/i
|
|
- /^rel-.*$/i
|
|
- /^master.*$/i
|
|
|
|
release_build:
|
|
stage: build
|
|
variables:
|
|
PACKAGE: 1
|
|
UPLOAD: 1
|
|
PULP3_RPM_REPO_NAME: tsg-stable-x86_64.el7
|
|
PULP3_RPM_DIST_NAME: tsg-stable-x86_64.el7
|
|
extends: .build_rpm
|
|
script:
|
|
- ./ci/travis.sh
|
|
dependencies:
|
|
- images_build
|
|
only:
|
|
- tags
|