Loading .dockerignore 0 → 100644 +3 −0 Original line number Diff line number Diff line * !src !script .gitlab-ci.yml +144 −7 Original line number Diff line number Diff line stages: - package - test-package - deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy:${DOCKER_DEPLOY_IMAGE_TAG} services: - docker:dind Loading @@ -9,15 +11,72 @@ services: variables: DOCKER_DRIVER: overlay2 STACK: nifi SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 docker-build-commit-non-master-branches: stage: package image: docker:stable only: - branches except: - 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 push ${CI_REGISTRY_IMAGE} docker-build-commit-master-branch: stage: package image: docker:stable only: - 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}:latest . - docker push ${CI_REGISTRY_IMAGE} docker-tag-already-built-image: stage: package image: docker:stable only: - tags script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker pull ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} - 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 allow_failure: true only: - branches except: - schedules 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 - apk add -U wget ca-certificates - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker pull ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} - wget https://github.com/arminc/clair-scanner/releases/download/v8/clair-scanner_linux_amd64 - 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 artifacts: paths: [gl-sast-container-report.json] deploy-nifi-supporting-branch-develop: stage: deploy variables: SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 IMAGE_TAG: ${DEV_NIFI_VERSION} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml COMPOSE_FILE: docker-compose.nifi.tmpl.yml:docker-compose.nifi.dev.yml PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME} UI_AUTH: ${DEV_UI_AUTH} script: Loading @@ -36,8 +95,10 @@ deploy-nifi-stable-branch-develop: stage: deploy variables: SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 IMAGE_TAG: ${DEV_NIFI_VERSION} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml COMPOSE_FILE: docker-compose.nifi.tmpl.yml:docker-compose.nifi.dev.yml PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME} UI_AUTH: ${DEV_UI_AUTH} script: Loading @@ -54,8 +115,10 @@ deploy-nifi-supporting-branch-production: stage: deploy variables: SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 IMAGE_TAG: ${PRO_NIFI_VERSION} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml COMPOSE_FILE: docker-compose.nifi.tmpl.yml:docker-compose.nifi.prod.yml PUBLIC_HOSTNAME: ${PRO_PUBLIC_HOSTNAME} UI_AUTH: ${PRO_UI_AUTH} script: Loading @@ -74,8 +137,10 @@ deploy-nifi-stable-branch-production: stage: deploy variables: SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 IMAGE_TAG: ${PRO_NIFI_VERSION} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml COMPOSE_FILE: docker-compose.nifi.tmpl.yml:docker-compose.nifi.prod.yml PUBLIC_HOSTNAME: ${PRO_PUBLIC_HOSTNAME} UI_AUTH: ${PRO_UI_AUTH} script: Loading @@ -87,3 +152,75 @@ deploy-nifi-stable-branch-production: only: - master when: manual deploy-nifi-conf-loader-supporting-branch-develop: stage: deploy variables: SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICES_TO_CHECK: nifi_nifi-conf-loader STATUS_CHECK_DELAY: 30 IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.nifi-conf-loader.tmpl.yml:docker-compose.nifi-conf-loader.dev.yml script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: dev/nifi-conf-loader only: - branches except: - master when: manual deploy-nifi-conf-loader-stable-branch-develop: stage: deploy variables: SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICES_TO_CHECK: nifi_nifi-conf-loader STATUS_CHECK_DELAY: 30 IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.nifi-conf-loader.tmpl.yml:docker-compose.nifi-conf-loader.dev.yml script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: dev/nifi-conf-loader only: - master when: manual deploy-nifi-conf-loader-supporting-branch-production: stage: deploy variables: SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICES_TO_CHECK: nifi_nifi-conf-loader STATUS_CHECK_DELAY: 30 IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.nifi-conf-loader.tmpl.yml:docker-compose.nifi-conf-loader.prod.yml script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: pro/nifi-conf-loader only: - branches except: - master when: manual deploy-nifi-conf-loader-stable-branch-production: stage: deploy variables: SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICES_TO_CHECK: nifi_nifi-conf-loader STATUS_CHECK_DELAY: 30 IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.nifi-conf-loader.tmpl.yml:docker-compose.nifi-conf-loader.prod.yml script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: pro/nifi-conf-loader only: - master when: manual Dockerfile 0 → 100644 +9 −0 Original line number Diff line number Diff line FROM alpine:3.9 LABEL maintainer="info@redmic.es" COPY script / COPY src /redmic-nifi-conf ENTRYPOINT ["/entrypoint.sh"] deploy/docker-compose.nifi-conf-loader.dev.yml 0 → 100644 +1 −0 Original line number Diff line number Diff line version: '3.5' deploy/docker-compose.nifi-conf-loader.prod.yml 0 → 100644 +8 −0 Original line number Diff line number Diff line version: '3.5' services: nifi-conf-loader: deploy: placement: constraints: - node.role == worker Loading
.gitlab-ci.yml +144 −7 Original line number Diff line number Diff line stages: - package - test-package - deploy image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest image: registry.gitlab.com/redmic-project/docker/docker-deploy:${DOCKER_DEPLOY_IMAGE_TAG} services: - docker:dind Loading @@ -9,15 +11,72 @@ services: variables: DOCKER_DRIVER: overlay2 STACK: nifi SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 docker-build-commit-non-master-branches: stage: package image: docker:stable only: - branches except: - 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 push ${CI_REGISTRY_IMAGE} docker-build-commit-master-branch: stage: package image: docker:stable only: - 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}:latest . - docker push ${CI_REGISTRY_IMAGE} docker-tag-already-built-image: stage: package image: docker:stable only: - tags script: - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker pull ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} - 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 allow_failure: true only: - branches except: - schedules 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 - apk add -U wget ca-certificates - docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY} - docker pull ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA} - wget https://github.com/arminc/clair-scanner/releases/download/v8/clair-scanner_linux_amd64 - 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 artifacts: paths: [gl-sast-container-report.json] deploy-nifi-supporting-branch-develop: stage: deploy variables: SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 IMAGE_TAG: ${DEV_NIFI_VERSION} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml COMPOSE_FILE: docker-compose.nifi.tmpl.yml:docker-compose.nifi.dev.yml PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME} UI_AUTH: ${DEV_UI_AUTH} script: Loading @@ -36,8 +95,10 @@ deploy-nifi-stable-branch-develop: stage: deploy variables: SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 IMAGE_TAG: ${DEV_NIFI_VERSION} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml COMPOSE_FILE: docker-compose.nifi.tmpl.yml:docker-compose.nifi.dev.yml PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME} UI_AUTH: ${DEV_UI_AUTH} script: Loading @@ -54,8 +115,10 @@ deploy-nifi-supporting-branch-production: stage: deploy variables: SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 IMAGE_TAG: ${PRO_NIFI_VERSION} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml COMPOSE_FILE: docker-compose.nifi.tmpl.yml:docker-compose.nifi.prod.yml PUBLIC_HOSTNAME: ${PRO_PUBLIC_HOSTNAME} UI_AUTH: ${PRO_UI_AUTH} script: Loading @@ -74,8 +137,10 @@ deploy-nifi-stable-branch-production: stage: deploy variables: SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICES_TO_CHECK: nifi_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 IMAGE_TAG: ${PRO_NIFI_VERSION} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml COMPOSE_FILE: docker-compose.nifi.tmpl.yml:docker-compose.nifi.prod.yml PUBLIC_HOSTNAME: ${PRO_PUBLIC_HOSTNAME} UI_AUTH: ${PRO_UI_AUTH} script: Loading @@ -87,3 +152,75 @@ deploy-nifi-stable-branch-production: only: - master when: manual deploy-nifi-conf-loader-supporting-branch-develop: stage: deploy variables: SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICES_TO_CHECK: nifi_nifi-conf-loader STATUS_CHECK_DELAY: 30 IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.nifi-conf-loader.tmpl.yml:docker-compose.nifi-conf-loader.dev.yml script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: dev/nifi-conf-loader only: - branches except: - master when: manual deploy-nifi-conf-loader-stable-branch-develop: stage: deploy variables: SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICES_TO_CHECK: nifi_nifi-conf-loader STATUS_CHECK_DELAY: 30 IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.nifi-conf-loader.tmpl.yml:docker-compose.nifi-conf-loader.dev.yml script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: dev/nifi-conf-loader only: - master when: manual deploy-nifi-conf-loader-supporting-branch-production: stage: deploy variables: SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICES_TO_CHECK: nifi_nifi-conf-loader STATUS_CHECK_DELAY: 30 IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.nifi-conf-loader.tmpl.yml:docker-compose.nifi-conf-loader.prod.yml script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: pro/nifi-conf-loader only: - branches except: - master when: manual deploy-nifi-conf-loader-stable-branch-production: stage: deploy variables: SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICES_TO_CHECK: nifi_nifi-conf-loader STATUS_CHECK_DELAY: 30 IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.nifi-conf-loader.tmpl.yml:docker-compose.nifi-conf-loader.prod.yml script: - deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} environment: name: pro/nifi-conf-loader only: - master when: manual
Dockerfile 0 → 100644 +9 −0 Original line number Diff line number Diff line FROM alpine:3.9 LABEL maintainer="info@redmic.es" COPY script / COPY src /redmic-nifi-conf ENTRYPOINT ["/entrypoint.sh"]
deploy/docker-compose.nifi-conf-loader.dev.yml 0 → 100644 +1 −0 Original line number Diff line number Diff line version: '3.5'
deploy/docker-compose.nifi-conf-loader.prod.yml 0 → 100644 +8 −0 Original line number Diff line number Diff line version: '3.5' services: nifi-conf-loader: deploy: placement: constraints: - node.role == worker