Loading .gitlab-ci.yml +38 −30 Original line number Diff line number Diff line Loading @@ -7,14 +7,12 @@ stages: maven-build-lib: stage: build-lib image: registry.gitlab.com/redmic-project/docker/maven:latest image: registry.gitlab.com/redmic-project/docker/maven variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test only: - branches except: - master cache: paths: - .m2/repository/ Loading @@ -25,21 +23,19 @@ maven-build-lib: after_script: - rm -r .m2/repository/es artifacts: name: "${CI_PROJECT_NAME}" name: "${CI_PROJECT_NAME}-lib-${CI_COMMIT_REF_NAME}" expire_in: '6 months' paths: - "${CI_PROJECT_NAME}-lib/target/*.jar" maven-build-commands: stage: build-services image: registry.gitlab.com/redmic-project/docker/maven:latest image: registry.gitlab.com/redmic-project/docker/maven variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test only: - branches except: - master cache: paths: - .m2/repository/ Loading @@ -50,7 +46,7 @@ maven-build-commands: after_script: - rm -r .m2/repository/es artifacts: name: "${CI_PROJECT_NAME}" name: "${CI_PROJECT_NAME}-commands-${CI_COMMIT_REF_NAME}" expire_in: '6 months' paths: - "${CI_PROJECT_NAME}-commands/dist/*.jar" Loading @@ -58,14 +54,12 @@ maven-build-commands: maven-build-view: stage: build-services image: registry.gitlab.com/redmic-project/docker/maven:latest image: registry.gitlab.com/redmic-project/docker/maven variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test only: - branches except: - master cache: paths: - .m2/repository/ Loading @@ -76,13 +70,13 @@ maven-build-view: after_script: - rm -r .m2/repository/es artifacts: name: "${CI_PROJECT_NAME}" name: "${CI_PROJECT_NAME}-view-${CI_COMMIT_REF_NAME}" expire_in: '6 months' paths: - "${CI_PROJECT_NAME}-view/dist/*.jar" - "${CI_PROJECT_NAME}-view/target/generated-docs" docker-build-commit: docker-build-commit-non-master-branches: stage: package image: docker:stable variables: Loading @@ -102,7 +96,7 @@ docker-build-commit: -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-latest . - docker push ${CI_REGISTRY_IMAGE} docker-build-tag: docker-build-commit-master-branch: stage: package image: docker:stable variables: Loading @@ -112,15 +106,29 @@ docker-build-tag: services: - docker:dind only: - tags - master script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - > docker build --build-arg PARENT_IMAGE_NAME=${PARENT_IMAGE_NAME} --build-arg PARENT_IMAGE_TAG=${PARENT_IMAGE_TAG} -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} -t ${CI_REGISTRY_IMAGE}:latest . -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} -t ${CI_REGISTRY_IMAGE}:latest . - docker push ${CI_REGISTRY_IMAGE} container_scanning: docker-tag-already-built-image: stage: package image: docker:stable variables: DOCKER_DRIVER: overlay2 services: - docker:dind only: - tags script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker tag ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} - docker push ${CI_REGISTRY_IMAGE} container-scanning: stage: test-package image: docker:stable variables: Loading @@ -130,8 +138,6 @@ container_scanning: - docker:stable-dind only: - branches except: - master script: - docker run -d --name db arminc/clair-db:latest - docker run -p 6060:6060 --link db:postgres -d --name clair arminc/clair-local-scan:v2.0.1 Loading @@ -142,13 +148,15 @@ container_scanning: - mv clair-scanner_linux_amd64 clair-scanner - chmod +x clair-scanner - touch clair-whitelist.yml - ./clair-scanner -c http://docker:6060 --ip $(hostname -i) -r gl-sast-container-report.json -l clair.log -w clair-whitelist.yml ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} || true - > ./clair-scanner -c http://docker:6060 --ip $(hostname -i) -r gl-sast-container-report.json -l clair.log -w clair-whitelist.yml ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} || true artifacts: paths: [gl-sast-container-report.json] deploy-commands-dev: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -170,7 +178,7 @@ deploy-commands-dev: deploy-view-dev: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -192,7 +200,7 @@ deploy-view-dev: deploy-commands-supporting-branch: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -218,7 +226,7 @@ deploy-commands-supporting-branch: deploy-view-supporting-branch: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -244,13 +252,13 @@ deploy-view-supporting-branch: deploy-commands-pro: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME}-commands IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_TAG} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-commands.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-commands.prod.yml services: - docker:dind Loading @@ -262,18 +270,18 @@ deploy-commands-pro: name: pro/${CI_PROJECT_NAME}-commands url: https://${PRO_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME}/commands only: - tags - master when: manual deploy-view-pro: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME}-view IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_TAG} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-view.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-view.prod.yml services: - docker:dind Loading @@ -285,5 +293,5 @@ deploy-view-pro: name: pro/${CI_PROJECT_NAME}-view url: https://${PRO_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME}/view only: - tags - master when: manual Loading
.gitlab-ci.yml +38 −30 Original line number Diff line number Diff line Loading @@ -7,14 +7,12 @@ stages: maven-build-lib: stage: build-lib image: registry.gitlab.com/redmic-project/docker/maven:latest image: registry.gitlab.com/redmic-project/docker/maven variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test only: - branches except: - master cache: paths: - .m2/repository/ Loading @@ -25,21 +23,19 @@ maven-build-lib: after_script: - rm -r .m2/repository/es artifacts: name: "${CI_PROJECT_NAME}" name: "${CI_PROJECT_NAME}-lib-${CI_COMMIT_REF_NAME}" expire_in: '6 months' paths: - "${CI_PROJECT_NAME}-lib/target/*.jar" maven-build-commands: stage: build-services image: registry.gitlab.com/redmic-project/docker/maven:latest image: registry.gitlab.com/redmic-project/docker/maven variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test only: - branches except: - master cache: paths: - .m2/repository/ Loading @@ -50,7 +46,7 @@ maven-build-commands: after_script: - rm -r .m2/repository/es artifacts: name: "${CI_PROJECT_NAME}" name: "${CI_PROJECT_NAME}-commands-${CI_COMMIT_REF_NAME}" expire_in: '6 months' paths: - "${CI_PROJECT_NAME}-commands/dist/*.jar" Loading @@ -58,14 +54,12 @@ maven-build-commands: maven-build-view: stage: build-services image: registry.gitlab.com/redmic-project/docker/maven:latest image: registry.gitlab.com/redmic-project/docker/maven variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test only: - branches except: - master cache: paths: - .m2/repository/ Loading @@ -76,13 +70,13 @@ maven-build-view: after_script: - rm -r .m2/repository/es artifacts: name: "${CI_PROJECT_NAME}" name: "${CI_PROJECT_NAME}-view-${CI_COMMIT_REF_NAME}" expire_in: '6 months' paths: - "${CI_PROJECT_NAME}-view/dist/*.jar" - "${CI_PROJECT_NAME}-view/target/generated-docs" docker-build-commit: docker-build-commit-non-master-branches: stage: package image: docker:stable variables: Loading @@ -102,7 +96,7 @@ docker-build-commit: -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-latest . - docker push ${CI_REGISTRY_IMAGE} docker-build-tag: docker-build-commit-master-branch: stage: package image: docker:stable variables: Loading @@ -112,15 +106,29 @@ docker-build-tag: services: - docker:dind only: - tags - master script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - > docker build --build-arg PARENT_IMAGE_NAME=${PARENT_IMAGE_NAME} --build-arg PARENT_IMAGE_TAG=${PARENT_IMAGE_TAG} -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} -t ${CI_REGISTRY_IMAGE}:latest . -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} -t ${CI_REGISTRY_IMAGE}:latest . - docker push ${CI_REGISTRY_IMAGE} container_scanning: docker-tag-already-built-image: stage: package image: docker:stable variables: DOCKER_DRIVER: overlay2 services: - docker:dind only: - tags script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker tag ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} - docker push ${CI_REGISTRY_IMAGE} container-scanning: stage: test-package image: docker:stable variables: Loading @@ -130,8 +138,6 @@ container_scanning: - docker:stable-dind only: - branches except: - master script: - docker run -d --name db arminc/clair-db:latest - docker run -p 6060:6060 --link db:postgres -d --name clair arminc/clair-local-scan:v2.0.1 Loading @@ -142,13 +148,15 @@ container_scanning: - mv clair-scanner_linux_amd64 clair-scanner - chmod +x clair-scanner - touch clair-whitelist.yml - ./clair-scanner -c http://docker:6060 --ip $(hostname -i) -r gl-sast-container-report.json -l clair.log -w clair-whitelist.yml ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} || true - > ./clair-scanner -c http://docker:6060 --ip $(hostname -i) -r gl-sast-container-report.json -l clair.log -w clair-whitelist.yml ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} || true artifacts: paths: [gl-sast-container-report.json] deploy-commands-dev: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -170,7 +178,7 @@ deploy-commands-dev: deploy-view-dev: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -192,7 +200,7 @@ deploy-view-dev: deploy-commands-supporting-branch: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -218,7 +226,7 @@ deploy-commands-supporting-branch: deploy-view-supporting-branch: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -244,13 +252,13 @@ deploy-view-supporting-branch: deploy-commands-pro: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME}-commands IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_TAG} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-commands.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-commands.prod.yml services: - docker:dind Loading @@ -262,18 +270,18 @@ deploy-commands-pro: name: pro/${CI_PROJECT_NAME}-commands url: https://${PRO_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME}/commands only: - tags - master when: manual deploy-view-pro: stage: deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME}-view IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_TAG} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-view.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-view.prod.yml services: - docker:dind Loading @@ -285,5 +293,5 @@ deploy-view-pro: name: pro/${CI_PROJECT_NAME}-view url: https://${PRO_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME}/view only: - tags - master when: manual