summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCan Eldem <celdem@gitlab.com>2020-01-23 13:07:41 +0000
committerCan Eldem <celdem@gitlab.com>2020-01-23 13:07:41 +0000
commit9d0efd773673d47e24fc1e5afa7ed0b514849463 (patch)
treedd34fe326b95a90ac1fe046b2213cc76a1c71e0a
parent2074e7e5ea3012be6f3a72bd4af934a42b7202ca (diff)
parent6d9f3615919425493ed460926fc1f050f6632fad (diff)
Merge branch 'split-gitlabci' into 'master'
Split test/release jobs into separate files See merge request gitlab-org/security-products/license-management!106
-rw-r--r--.gitlab-ci.yml346
-rw-r--r--.gitlab/qa.yml198
-rw-r--r--.gitlab/release.yml113
-rw-r--r--.gitlab/test.yml25
-rw-r--r--README.md2
5 files changed, 342 insertions, 342 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 626153b..b29663d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -8,6 +8,9 @@ variables:
include:
- template: Container-Scanning.gitlab-ci.yml
- template: Jobs/Code-Quality.gitlab-ci.yml
+ - local: .gitlab/test.yml
+ - local: .gitlab/qa.yml
+ - local: .gitlab/release.yml
services:
- docker:stable-dind
@@ -24,238 +27,14 @@ build commit:
script:
- docker info
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- - docker build -t $TMP_IMAGE .
+ - docker pull $CI_REGISTRY_IMAGE:edge || true
+ - docker build --cache-from $CI_REGISTRY_IMAGE:edge -t $TMP_IMAGE .
- docker push $TMP_IMAGE
container_scanning:
variables:
CI_APPLICATION_REPOSITORY: $CI_REGISTRY_IMAGE/tmp # only predefined variables are parameter-expanded (no $TMP_IMAGE)
-.QA:
- image: docker:stable
- stage: test
- variables:
- LM_PYTHON_VERSION: 3
- LM_REPORT_VERSION: 1
- script:
- - docker info
- - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- - docker pull $TMP_IMAGE
- - mkdir results
- - IMAGE_NAME=$TMP_IMAGE ./bin/test
- artifacts:
- paths:
- - results/
- when: always
-
-size:
- image: docker:stable
- stage: test
- allow_failure: true # temporary until we can shrink the image size.
- timeout: 1 minute
- script:
- - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- - docker pull $TMP_IMAGE
- - docker image ls $TMP_IMAGE
- - docker image inspect $TMP_IMAGE
-
-unit:
- stage: test
- script:
- - gem install bundler -v '~> 2.0'
- - bundle install
- - bundle exec rspec spec/unit
-
-integration:
- image:
- name: $TMP_IMAGE
- entrypoint: [""]
- stage: test
- script:
- - bash -lc "cd $LM_HOME && bundle install && bundle exec rspec spec/integration"
-
-QA:php-composer:
- extends: .QA
- variables:
- QA_PROJECT: php-composer
-
-QA:php-composer-v1-1:
- extends: QA:php-composer
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: php-composer-v1.1
-
-QA:php-composer-v2:
- extends: QA:php-composer
- variables:
- LM_REPORT_VERSION: 2
- QA_RESULTS: php-composer-v2
-
-QA:java-maven:
- extends: .QA
- variables:
- QA_PROJECT: java-maven
- QA_REF: 831c7a04
-
-QA:java-maven-v1-1:
- extends: QA:java-maven
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: java-maven-v1.1
-
-QA:java-maven-v2:
- extends: QA:java-maven
- variables:
- LM_REPORT_VERSION: 2
- QA_RESULTS: java-maven-v2
-
-QA:python-pip:
- extends: .QA
- variables:
- LM_PYTHON_VERSION: 2
- QA_PROJECT: python-pip
- QA_REF: 04dce91b
-
-QA:python-pip-v1-1:
- extends: QA:python-pip
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: python-pip-v1.1
-
-QA:python-pip-v2:
- extends: QA:python-pip
- variables:
- LM_REPORT_VERSION: '2.0'
- QA_RESULTS: python-pip-v2
-
-QA:python3-pip:
- extends: .QA
- variables:
- QA_RESULTS: python3-pip-v1
- QA_PROJECT: python-pip
- QA_REF: 48e250a1
-
-QA:python3-pip-v1-1:
- extends: QA:python3-pip
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: python3-pip-v1.1
-
-QA:python3-pip-v2:
- extends: QA:python3-pip
- variables:
- LM_REPORT_VERSION: 2
- QA_RESULTS: python3-pip-v2
-
-QA:python3-pipenv:
- extends: .QA
- variables:
- QA_RESULTS: python-pipenv-v1
- QA_PROJECT: python-pipenv
- QA_REF: pip-file-lock
-
-QA:python3-pipenv-v1-1:
- extends: QA:python3-pipenv
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: python-pipenv-v1.1
-
-QA:python3-pipenv-v2:
- extends: QA:python3-pipenv
- variables:
- LM_REPORT_VERSION: 2
- QA_RESULTS: python-pipenv-v2
-
-QA:ruby-bundler:
- extends: .QA
- variables:
- QA_PROJECT: ruby-bundler
- QA_REF: master
-
-QA:ruby-bundler-v1-1:
- extends: QA:ruby-bundler
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: ruby-bundler-v1.1
-
-QA:ruby-bundler-v2:
- extends: QA:ruby-bundler
- variables:
- LM_REPORT_VERSION: 2
- QA_RESULTS: ruby-bundler-v2
-
-QA:go:
- extends: .QA
- variables:
- QA_PROJECT: go-modules
- QA_REF: master
-
-QA:go-v1-1:
- extends: QA:go
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: go-modules-v1.1
-
-QA:go-v2:
- extends: QA:go
- variables:
- LM_REPORT_VERSION: 2
- QA_RESULTS: go-modules-v2
-
-QA:js:
- extends: .QA
- variables:
- QA_PROJECT: js-yarn
- QA_REF: master
-
-QA:js-v1-1:
- extends: QA:js
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: js-yarn-v1.1
-
-QA:js-v2:
- extends: QA:js
- variables:
- LM_REPORT_VERSION: 2
- QA_RESULTS: js-yarn-v2
-
-QA:js-npm:
- extends: .QA
- variables:
- QA_PROJECT: js-npm
- QA_REF: master
-
-QA:js-npm-v1-1:
- extends: QA:js-npm
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: js-npm-v1.1
-
-QA:js-npm-v2:
- extends: QA:js-npm
- variables:
- LM_REPORT_VERSION: 2
- QA_RESULTS: js-npm-v2
-
-QA:dotnet:
- extends: .QA
- variables:
- QA_PROJECT: csharp-nuget-dotnetcore
- QA_REF: master
-
-QA:dotnet-v1-1:
- extends: QA:dotnet
- variables:
- LM_REPORT_VERSION: '1.1'
- QA_RESULTS: csharp-nuget-dotnetcore-v1.1
-
-QA:dotnet-v2:
- extends: QA:dotnet
- variables:
- LM_REPORT_VERSION: 2
- QA_RESULTS: csharp-nuget-dotnetcore-v2
-
.docker_tag:
image: docker:stable
stage: tag
@@ -299,118 +78,3 @@ version:
- tags
when: manual
allow_failure: false
-
-.release:
- extends: .docker_tag
- stage: release
- only:
- - tags
-
-major:
- extends: .release
- variables:
- IMAGE_TAG: $MAJOR
-
-latest:
- extends: .release
-
-
-12-7-stable:
- extends: .release
- variables:
- DOTENV: ".env.12-7-stable"
-
-12-6-stable:
- extends: .release
- variables:
- DOTENV: ".env.12-6-stable"
-
-12-5-stable:
- extends: .release
- variables:
- DOTENV: ".env.12-5-stable"
-
-12-4-stable:
- extends: .release
- variables:
- DOTENV: ".env.12-4-stable"
-
-12-3-stable:
- extends: .release
- variables:
- DOTENV: ".env.12-3-stable"
-
-12-2-stable:
- extends: .release
- variables:
- DOTENV: ".env.12-2-stable"
-
-12-1-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-12-0-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-11-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-10-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-9-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-8-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-7-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-6-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-5-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-4-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-3-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-2-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-1-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
-
-11-0-stable:
- extends: .release
- variables:
- DOTENV: ".env.legacy"
diff --git a/.gitlab/qa.yml b/.gitlab/qa.yml
new file mode 100644
index 0000000..87cffa2
--- /dev/null
+++ b/.gitlab/qa.yml
@@ -0,0 +1,198 @@
+.QA:
+ image: docker:stable
+ stage: test
+ variables:
+ LM_PYTHON_VERSION: 3
+ LM_REPORT_VERSION: 1
+ script:
+ - docker info
+ - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
+ - docker pull $TMP_IMAGE
+ - mkdir results
+ - IMAGE_NAME=$TMP_IMAGE ./bin/test
+ artifacts:
+ paths:
+ - results/
+ when: always
+
+QA:php-composer:
+ extends: .QA
+ variables:
+ QA_PROJECT: php-composer
+
+QA:php-composer-v1-1:
+ extends: QA:php-composer
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: php-composer-v1.1
+
+QA:php-composer-v2:
+ extends: QA:php-composer
+ variables:
+ LM_REPORT_VERSION: 2
+ QA_RESULTS: php-composer-v2
+
+QA:java-maven:
+ extends: .QA
+ variables:
+ QA_PROJECT: java-maven
+ QA_REF: 831c7a04
+
+QA:java-maven-v1-1:
+ extends: QA:java-maven
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: java-maven-v1.1
+
+QA:java-maven-v2:
+ extends: QA:java-maven
+ variables:
+ LM_REPORT_VERSION: 2
+ QA_RESULTS: java-maven-v2
+
+QA:python-pip:
+ extends: .QA
+ variables:
+ LM_PYTHON_VERSION: 2
+ QA_PROJECT: python-pip
+ QA_REF: 04dce91b
+
+QA:python-pip-v1-1:
+ extends: QA:python-pip
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: python-pip-v1.1
+
+QA:python-pip-v2:
+ extends: QA:python-pip
+ variables:
+ LM_REPORT_VERSION: '2.0'
+ QA_RESULTS: python-pip-v2
+
+QA:python3-pip:
+ extends: .QA
+ variables:
+ QA_RESULTS: python3-pip-v1
+ QA_PROJECT: python-pip
+ QA_REF: 48e250a1
+
+QA:python3-pip-v1-1:
+ extends: QA:python3-pip
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: python3-pip-v1.1
+
+QA:python3-pip-v2:
+ extends: QA:python3-pip
+ variables:
+ LM_REPORT_VERSION: 2
+ QA_RESULTS: python3-pip-v2
+
+QA:python3-pipenv:
+ extends: .QA
+ variables:
+ QA_RESULTS: python-pipenv-v1
+ QA_PROJECT: python-pipenv
+ QA_REF: pip-file-lock
+
+QA:python3-pipenv-v1-1:
+ extends: QA:python3-pipenv
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: python-pipenv-v1.1
+
+QA:python3-pipenv-v2:
+ extends: QA:python3-pipenv
+ variables:
+ LM_REPORT_VERSION: 2
+ QA_RESULTS: python-pipenv-v2
+
+QA:ruby-bundler:
+ extends: .QA
+ variables:
+ QA_PROJECT: ruby-bundler
+ QA_REF: master
+
+QA:ruby-bundler-v1-1:
+ extends: QA:ruby-bundler
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: ruby-bundler-v1.1
+
+QA:ruby-bundler-v2:
+ extends: QA:ruby-bundler
+ variables:
+ LM_REPORT_VERSION: 2
+ QA_RESULTS: ruby-bundler-v2
+
+QA:go:
+ extends: .QA
+ variables:
+ QA_PROJECT: go-modules
+ QA_REF: master
+
+QA:go-v1-1:
+ extends: QA:go
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: go-modules-v1.1
+
+QA:go-v2:
+ extends: QA:go
+ variables:
+ LM_REPORT_VERSION: 2
+ QA_RESULTS: go-modules-v2
+
+QA:js:
+ extends: .QA
+ variables:
+ QA_PROJECT: js-yarn
+ QA_REF: master
+
+QA:js-v1-1:
+ extends: QA:js
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: js-yarn-v1.1
+
+QA:js-v2:
+ extends: QA:js
+ variables:
+ LM_REPORT_VERSION: 2
+ QA_RESULTS: js-yarn-v2
+
+QA:js-npm:
+ extends: .QA
+ variables:
+ QA_PROJECT: js-npm
+ QA_REF: master
+
+QA:js-npm-v1-1:
+ extends: QA:js-npm
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: js-npm-v1.1
+
+QA:js-npm-v2:
+ extends: QA:js-npm
+ variables:
+ LM_REPORT_VERSION: 2
+ QA_RESULTS: js-npm-v2
+
+QA:dotnet:
+ extends: .QA
+ variables:
+ QA_PROJECT: csharp-nuget-dotnetcore
+ QA_REF: master
+
+QA:dotnet-v1-1:
+ extends: QA:dotnet
+ variables:
+ LM_REPORT_VERSION: '1.1'
+ QA_RESULTS: csharp-nuget-dotnetcore-v1.1
+
+QA:dotnet-v2:
+ extends: QA:dotnet
+ variables:
+ LM_REPORT_VERSION: 2
+ QA_RESULTS: csharp-nuget-dotnetcore-v2
diff --git a/.gitlab/release.yml b/.gitlab/release.yml
new file mode 100644
index 0000000..3d52019
--- /dev/null
+++ b/.gitlab/release.yml
@@ -0,0 +1,113 @@
+.release:
+ extends: .docker_tag
+ stage: release
+ only:
+ - tags
+
+major:
+ extends: .release
+ variables:
+ IMAGE_TAG: $MAJOR
+
+latest:
+ extends: .release
+
+12-7-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.12-7-stable"
+
+12-6-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.12-6-stable"
+
+12-5-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.12-5-stable"
+
+12-4-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.12-4-stable"
+
+12-3-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.12-3-stable"
+
+12-2-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.12-2-stable"
+
+12-1-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+12-0-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-11-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-10-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-9-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-8-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-7-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-6-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-5-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-4-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-3-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-2-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-1-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
+
+11-0-stable:
+ extends: .release
+ variables:
+ DOTENV: ".env.legacy"
diff --git a/.gitlab/test.yml b/.gitlab/test.yml
new file mode 100644
index 0000000..2bf8880
--- /dev/null
+++ b/.gitlab/test.yml
@@ -0,0 +1,25 @@
+size:
+ image: docker:stable
+ stage: test
+ allow_failure: true # temporary until we can shrink the image size.
+ timeout: 1 minute
+ script:
+ - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
+ - docker pull $TMP_IMAGE
+ - docker image ls $TMP_IMAGE
+ - docker image inspect $TMP_IMAGE
+
+unit:
+ stage: test
+ script:
+ - gem install bundler -v '~> 2.0'
+ - bundle install
+ - bundle exec rspec spec/unit
+
+integration:
+ image:
+ name: $TMP_IMAGE
+ entrypoint: [""]
+ stage: test
+ script:
+ - bash -lc "cd $LM_HOME && bundle install && bundle exec rspec spec/integration"
diff --git a/README.md b/README.md
index ee67059..904d490 100644
--- a/README.md
+++ b/README.md
@@ -108,7 +108,7 @@ to the docker command.
## Versioning and release process
-1. Create a new entry in the `.gitlab-ci.yml` file for the new version to release.
+1. Create a new entry in the `.gitlab/release.yml` file for the new version to release.
```yaml
12-x-stable: