Loading .gitlab-ci.yml +40 −19 Original line number Diff line number Diff line Loading @@ -6,15 +6,13 @@ stages: maven-build: stage: build image: redmic/maven-gitlab image: registry.gitlab.com/redmic-project/docker/maven variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test AISHUB_SERVICE_USERNAME: ${AISHUB_SERVICE_USERNAME} only: - branches except: - master cache: paths: - .m2/repository/ Loading @@ -25,16 +23,18 @@ maven-build: after_script: - rm -r .m2/repository/es artifacts: name: "${CI_PROJECT_NAME}" name: "${CI_PROJECT_NAME}-${CI_COMMIT_REF_NAME}" expire_in: '6 months' paths: - dist/*.jar docker-build-commit: docker-build-commit-non-master-branches: stage: package image: redmic/docker-gitlab image: docker:stable variables: DOCKER_DRIVER: overlay2 PARENT_IMAGE_NAME: registry.gitlab.com/redmic-project/docker/redmic-server PARENT_IMAGE_TAG: latest services: - docker:dind only: Loading @@ -43,12 +43,32 @@ docker-build-commit: - master script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker build -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-latest . - > docker build --build-arg PARENT_IMAGE_NAME=${PARENT_IMAGE_NAME} --build-arg PARENT_IMAGE_TAG=${PARENT_IMAGE_TAG} -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: redmic/docker-gitlab image: docker:stable variables: DOCKER_DRIVER: overlay2 PARENT_IMAGE_NAME: registry.gitlab.com/redmic-project/docker/redmic-server PARENT_IMAGE_TAG: latest services: - docker:dind only: - 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_SHA} -t ${CI_REGISTRY_IMAGE}:latest . - docker push ${CI_REGISTRY_IMAGE} docker-tag-already-built-image: stage: package image: docker:stable variables: DOCKER_DRIVER: overlay2 services: Loading @@ -57,10 +77,10 @@ docker-build-tag: - tags script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker build -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} -t ${CI_REGISTRY_IMAGE}:latest . - docker tag ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} - docker push ${CI_REGISTRY_IMAGE} container_scanning: container-scanning: stage: test-package image: docker:stable variables: Loading @@ -70,8 +90,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 @@ -82,13 +100,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-dev: stage: deploy image: redmic/docker-gitlab image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -111,7 +131,7 @@ deploy-dev: deploy-supporting-branch: stage: deploy image: redmic/docker-gitlab image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -125,6 +145,7 @@ deploy-supporting-branch: - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=pre AISHUB_SERVICE_USERNAME=${AISHUB_SERVICE_USERNAME} APP_SCHEDULING_ENABLE=${APP_SCHEDULING_ENABLE} environment: name: dev url: https://appdev.${DEV_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} Loading @@ -137,13 +158,13 @@ deploy-supporting-branch: deploy-pro: stage: deploy image: redmic/docker-gitlab image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_TAG} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml services: - docker:dind Loading @@ -155,5 +176,5 @@ deploy-pro: name: pro url: https://${PRO_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} only: - tags - master when: manual Dockerfile +4 −1 Original line number Diff line number Diff line FROM redmic/redmic-server ARG PARENT_IMAGE_NAME ARG PARENT_IMAGE_TAG FROM ${PARENT_IMAGE_NAME}:${PARENT_IMAGE_TAG} COPY /dist/*.jar ./ Loading docker-compose.tmpl.yml +0 −2 Original line number Diff line number Diff line Loading @@ -4,8 +4,6 @@ services: ais: image: ${IMAGE_NAME}:${IMAGE_TAG:-latest} environment: - MICROSERVICE_NAME - MICROSERVICE_PORT - SPRING_PROFILES_ACTIVE - AISHUB_SERVICE_USERNAME - APP_SCHEDULING_ENABLE Loading src/main/resources/application-prod.properties +3 −3 Original line number Diff line number Diff line spring.kafka.bootstrap-servers=localhost:9092 spring.kafka.bootstrap-servers=kf-1:9092,kf-2:9092,kf-3:9092 spring.kafka.properties.schema.registry.url=http://localhost:18081 spring.kafka.properties.schema.registry.url=http://schema-registry:8081 config.fixedDelay=60000 app.scheduling.enable=true Loading @@ -8,4 +8,4 @@ app.scheduling.enable=true aishub.service.url=http://data.aishub.net/ws.php?username=${aishub.service.username}&format=1&output=csv&compress=1 #Local private property.path.media_storage.LOCAL_PRIVATE_BASE_PATH=/data/REDMIC/MEDIA_STORAGE No newline at end of file property.path.media_storage.LOCAL_PRIVATE_BASE_PATH=/data/MEDIA_STORAGE Loading
.gitlab-ci.yml +40 −19 Original line number Diff line number Diff line Loading @@ -6,15 +6,13 @@ stages: maven-build: stage: build image: redmic/maven-gitlab image: registry.gitlab.com/redmic-project/docker/maven variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test AISHUB_SERVICE_USERNAME: ${AISHUB_SERVICE_USERNAME} only: - branches except: - master cache: paths: - .m2/repository/ Loading @@ -25,16 +23,18 @@ maven-build: after_script: - rm -r .m2/repository/es artifacts: name: "${CI_PROJECT_NAME}" name: "${CI_PROJECT_NAME}-${CI_COMMIT_REF_NAME}" expire_in: '6 months' paths: - dist/*.jar docker-build-commit: docker-build-commit-non-master-branches: stage: package image: redmic/docker-gitlab image: docker:stable variables: DOCKER_DRIVER: overlay2 PARENT_IMAGE_NAME: registry.gitlab.com/redmic-project/docker/redmic-server PARENT_IMAGE_TAG: latest services: - docker:dind only: Loading @@ -43,12 +43,32 @@ docker-build-commit: - master script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker build -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-latest . - > docker build --build-arg PARENT_IMAGE_NAME=${PARENT_IMAGE_NAME} --build-arg PARENT_IMAGE_TAG=${PARENT_IMAGE_TAG} -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: redmic/docker-gitlab image: docker:stable variables: DOCKER_DRIVER: overlay2 PARENT_IMAGE_NAME: registry.gitlab.com/redmic-project/docker/redmic-server PARENT_IMAGE_TAG: latest services: - docker:dind only: - 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_SHA} -t ${CI_REGISTRY_IMAGE}:latest . - docker push ${CI_REGISTRY_IMAGE} docker-tag-already-built-image: stage: package image: docker:stable variables: DOCKER_DRIVER: overlay2 services: Loading @@ -57,10 +77,10 @@ docker-build-tag: - tags script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker build -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} -t ${CI_REGISTRY_IMAGE}:latest . - docker tag ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG} - docker push ${CI_REGISTRY_IMAGE} container_scanning: container-scanning: stage: test-package image: docker:stable variables: Loading @@ -70,8 +90,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 @@ -82,13 +100,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-dev: stage: deploy image: redmic/docker-gitlab image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -111,7 +131,7 @@ deploy-dev: deploy-supporting-branch: stage: deploy image: redmic/docker-gitlab image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} Loading @@ -125,6 +145,7 @@ deploy-supporting-branch: - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=pre AISHUB_SERVICE_USERNAME=${AISHUB_SERVICE_USERNAME} APP_SCHEDULING_ENABLE=${APP_SCHEDULING_ENABLE} environment: name: dev url: https://appdev.${DEV_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} Loading @@ -137,13 +158,13 @@ deploy-supporting-branch: deploy-pro: stage: deploy image: redmic/docker-gitlab image: registry.gitlab.com/redmic-project/docker/docker-deploy variables: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_TAG} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml services: - docker:dind Loading @@ -155,5 +176,5 @@ deploy-pro: name: pro url: https://${PRO_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} only: - tags - master when: manual
Dockerfile +4 −1 Original line number Diff line number Diff line FROM redmic/redmic-server ARG PARENT_IMAGE_NAME ARG PARENT_IMAGE_TAG FROM ${PARENT_IMAGE_NAME}:${PARENT_IMAGE_TAG} COPY /dist/*.jar ./ Loading
docker-compose.tmpl.yml +0 −2 Original line number Diff line number Diff line Loading @@ -4,8 +4,6 @@ services: ais: image: ${IMAGE_NAME}:${IMAGE_TAG:-latest} environment: - MICROSERVICE_NAME - MICROSERVICE_PORT - SPRING_PROFILES_ACTIVE - AISHUB_SERVICE_USERNAME - APP_SCHEDULING_ENABLE Loading
src/main/resources/application-prod.properties +3 −3 Original line number Diff line number Diff line spring.kafka.bootstrap-servers=localhost:9092 spring.kafka.bootstrap-servers=kf-1:9092,kf-2:9092,kf-3:9092 spring.kafka.properties.schema.registry.url=http://localhost:18081 spring.kafka.properties.schema.registry.url=http://schema-registry:8081 config.fixedDelay=60000 app.scheduling.enable=true Loading @@ -8,4 +8,4 @@ app.scheduling.enable=true aishub.service.url=http://data.aishub.net/ws.php?username=${aishub.service.username}&format=1&output=csv&compress=1 #Local private property.path.media_storage.LOCAL_PRIVATE_BASE_PATH=/data/REDMIC/MEDIA_STORAGE No newline at end of file property.path.media_storage.LOCAL_PRIVATE_BASE_PATH=/data/MEDIA_STORAGE