Keep the build images DRY

This commit is contained in:
Andrew Newdigate 2017-08-08 17:58:52 +00:00 committed by Stan Hu
parent 2e43cb6259
commit 81d80aa564
17 changed files with 260 additions and 178 deletions

View file

@ -27,20 +27,41 @@ before_script:
only:
- master
ruby-2.1-git-2.7-phantomjs-2.1 test: *test_build
ruby-2.3-git-2.7-phantomjs-2.1 test: *test_build
ruby-2.3.3-git-2.7-phantomjs-2.1-node-7.1 test: *test_build
ruby-2.3.3-golang-1.8-git-2.7-phantomjs-2.1-node-7.1 test: *test_build
ruby-2.3.3-golang-1.8-git-2.7-phantomjs-2.1-node-7.1-postgresql-9.6 test: *test_build
ruby-2.3.3-golang-1.8-git-2.7-chrome-60.0-node-7.1-postgresql-9.6 test: *test_build
ruby-2.4.1-golang-1.8-git-2.7-phantomjs-2.1-node-7.1-postgresql-9.6 test: *test_build
.test_custom: &test_custom
stage: test
script:
# Hack to set an array in /bin/sh
# http://unix.stackexchange.com/a/137571
- set -- $CI_JOB_NAME
- ./scripts/custom-docker-build $1
except:
- master
.build_and_deploy_custom: &build_and_deploy_custom
stage: build
script:
- ./scripts/custom-docker-build $CI_BUILD_NAME -t "$CI_REGISTRY_IMAGE:$CI_JOB_NAME"
- docker push "$CI_REGISTRY_IMAGE:$CI_JOB_NAME"
only:
- master
# Tests
ruby-2.1-git-2.7-phantomjs-2.1 test: *test_custom
ruby-2.3-git-2.7-phantomjs-2.1 test: *test_custom
ruby-2.3-golang-1.8-git-2.13 test: *test_custom
ruby-2.3-golang-1.8-git-2.8 test: *test_custom
ruby-2.3.3-git-2.7-phantomjs-2.1-node-7.1 test: *test_custom
ruby-2.3.3-golang-1.8-git-2.7-phantomjs-2.1-node-7.1 test: *test_custom
ruby-2.3.3-golang-1.8-git-2.7-phantomjs-2.1-node-7.1-postgresql-9.6 test: *test_custom
ruby-2.3.3-golang-1.8-git-2.7-chrome-60.0-node-7.1-postgresql-9.6 test: *test_custom
ruby-2.4.1-golang-1.8-git-2.7-phantomjs-2.1-node-7.1-postgresql-9.6 test: *test_custom
golang-1.8-git-2.8.4 test: *test_custom
golang-1.8-git-2.13 test: *test_custom
www-gitlab-com test: *test_build
doc-gitlab-com test: *test_build
gitlab-qa test: *test_build
golang-1.5-git-2.8.4 test: *test_build
golang-1.6-git-2.8.4 test: *test_build
golang-1.7-git-2.8.4 test: *test_build
golang-1.8-git-2.8.4 test: *test_build
omnibus-gitlab-centos6 test: *test_build
omnibus-gitlab-centos7 test: *test_build
omnibus-gitlab-jessie test: *test_build
@ -50,20 +71,23 @@ omnibus-gitlab-trusty test: *test_build
omnibus-gitlab-wheezy test: *test_build
omnibus-gitlab-xenial test: *test_build
ruby-2.1-git-2.7-phantomjs-2.1: *build_and_deploy
ruby-2.3-git-2.7-phantomjs-2.1: *build_and_deploy
ruby-2.3.3-git-2.7-phantomjs-2.1-node-7.1: *build_and_deploy
ruby-2.3.3-golang-1.8-git-2.7-phantomjs-2.1-node-7.1: *build_and_deploy
ruby-2.3.3-golang-1.8-git-2.7-phantomjs-2.1-node-7.1-postgresql-9.6: *build_and_deploy
ruby-2.3.3-golang-1.8-git-2.7-chrome-60.0-node-7.1-postgresql-9.6: *build_and_deploy
ruby-2.4.1-golang-1.8-git-2.7-phantomjs-2.1-node-7.1-postgresql-9.6: *build_and_deploy
# Builds
ruby-2.1-git-2.7-phantomjs-2.1: *build_and_deploy_custom
ruby-2.3-git-2.7-phantomjs-2.1: *build_and_deploy_custom
ruby-2.3-golang-1.8-git-2.13: *build_and_deploy_custom
ruby-2.3-golang-1.8-git-2.8: *build_and_deploy_custom
ruby-2.3.3-git-2.7-phantomjs-2.1-node-7.1: *build_and_deploy_custom
ruby-2.3.3-golang-1.8-git-2.7-phantomjs-2.1-node-7.1: *build_and_deploy_custom
ruby-2.3.3-golang-1.8-git-2.7-phantomjs-2.1-node-7.1-postgresql-9.6: *build_and_deploy_custom
ruby-2.3.3-golang-1.8-git-2.7-chrome-60.0-node-7.1-postgresql-9.6: *build_and_deploy_custom
ruby-2.4.1-golang-1.8-git-2.7-phantomjs-2.1-node-7.1-postgresql-9.6: *build_and_deploy_custom
golang-1.8-git-2.8.4: *build_and_deploy_custom
golang-1.8-git-2.13: *build_and_deploy_custom
www-gitlab-com: *build_and_deploy
doc-gitlab-com: *build_and_deploy
gitlab-qa: *build_and_deploy
golang-1.5-git-2.8.4: *build_and_deploy
golang-1.6-git-2.8.4: *build_and_deploy
golang-1.7-git-2.8.4: *build_and_deploy
golang-1.8-git-2.8.4: *build_and_deploy
omnibus-gitlab-centos6: *build_and_deploy
omnibus-gitlab-centos7: *build_and_deploy
omnibus-gitlab-jessie: *build_and_deploy
@ -72,3 +96,4 @@ omnibus-gitlab-opensuse42.2: *build_and_deploy
omnibus-gitlab-trusty: *build_and_deploy
omnibus-gitlab-wheezy: *build_and_deploy
omnibus-gitlab-xenial: *build_and_deploy