Loading .gitlab-ci.yml +26 −21 Original line number Diff line number Diff line Loading @@ -11,37 +11,42 @@ include: - project: 'redmic-project/gitlab-ci-templates' ref: master file: '/deployment.yml' - project: 'redmic-project/gitlab-ci-templates' ref: master file: '/deployment-custom-image.yml' stages: - build - license-list - pre-package - package - test-package - post-package - deploy variables: PROJECT_PARENT_NAME: api .maven-build: services: - name: postgres:${POSTGRES_IMAGE_TAG} alias: db variables: POSTGRES_IMAGE_TAG: 10.13-alpine POSTGRES_DB: redmic POSTGRES_USER: ${SPRING_DATASOURCE_USERNAME} POSTGRES_PASSWORD: ${SPRING_DATASOURCE_PASSWORD} LOGGING_LEVEL_ROOT: error LOGGING_LEVEL_ORG_SPRINGFRAMEWORK: error DOCKER_BUILD_ARGS: --build-arg PARENT_IMAGE_NAME=${REDMIC_SERVER_IMAGE_NAME} --build-arg PARENT_IMAGE_TAG=${REDMIC_SERVER_IMAGE_TAG} STACK: api STATUS_CHECK_DELAY: 300 .deploy: script: - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=${SPRING_PROFILES_ACTIVE} SPRING_DATASOURCE_USERNAME=${SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME=${JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD=${JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY=${AWS_ACCESS_KEY} AWS_SECRET_KEY=${AWS_SECRET_KEY} ELASTIC_XPACKSECURITYUSER=${ELASTIC_XPACKSECURITYUSER} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME} environment: url: https://${PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} .deploy-development: .docker-build: variables: SPRING_PROFILES_ACTIVE: pre DBLD_PARENT_IMAGE_NAME: ${REDMIC_SERVER_IMAGE_NAME} DBLD_PARENT_IMAGE_TAG: ${REDMIC_SERVER_IMAGE_TAG} .deploy-production: .deploy: variables: SPRING_PROFILES_ACTIVE: prod STACK: ${PROJECT_PARENT_NAME} SERVICES_TO_CHECK: ${PROJECT_PARENT_NAME}_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 environment: url: https://${PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} Dockerfile +8 −2 Original line number Diff line number Diff line ARG PARENT_IMAGE_NAME ARG PARENT_IMAGE_TAG ARG PARENT_IMAGE_NAME=registry.gitlab.com/redmic-project/docker/redmic-server ARG PARENT_IMAGE_TAG=latest FROM ${PARENT_IMAGE_NAME}:${PARENT_IMAGE_TAG} COPY /dist/*.jar ./ ARG MICROSERVICE_NAME=tasks ENV MICROSERVICE_NAME=${MICROSERVICE_NAME} ARG MICROSERVICE_PORT=8088 ENV MICROSERVICE_PORT=${MICROSERVICE_PORT} EXPOSE ${MICROSERVICE_PORT} deploy/.env +3 −0 Original line number Diff line number Diff line PARENT_IMAGE_NAME=registry.gitlab.com/redmic-project/docker/redmic-server PARENT_IMAGE_TAG=latest MICROSERVICE_NAME=tasks MICROSERVICE_PORT=8088 deploy/docker-compose.dev.yml +11 −5 Original line number Diff line number Diff line Loading @@ -2,17 +2,23 @@ version: '3.5' services: tasks: environment: SPRING_PROFILES_ACTIVE: pre deploy: placement: constraints: - node.hostname == ${PLACEMENT_CONSTRAINTS_NODE_HOSTNAME:-hostname} resources: limits: cpus: '1' memory: 1G cpus: '${RESOURCES_LIMITS_CPUS:-1}' memory: ${RESOURCES_LIMITS_MEMORY:-1G} reservations: memory: 820M cpus: '${RESOURCES_RESERVATIONS_CPUS:-0.001}' memory: ${RESOURCES_RESERVATIONS_MEMORY:-820M} volumes: mediastorage-private-vol: name: mediastorage-private-vol name: ${MEDIASTORAGE_PRIVATE_VOL_NAME:-mediastorage-private-vol} mediastorage-public-vol: name: mediastorage-public-vol No newline at end of file name: ${MEDIASTORAGE_PUBLIC_VOL_NAME:-mediastorage-public-vol} deploy/docker-compose.prod.yml +8 −8 Original line number Diff line number Diff line Loading @@ -2,26 +2,26 @@ version: '3.5' services: tasks: environment: SPRING_PROFILES_ACTIVE: prod deploy: placement: constraints: - node.role == worker resources: limits: cpus: '1' memory: 2G cpus: '${RESOURCES_LIMITS_CPUS:-1}' memory: ${RESOURCES_LIMITS_MEMORY:-2G} reservations: memory: 1639M cpus: '${RESOURCES_RESERVATIONS_CPUS:-0.01}' memory: ${RESOURCES_RESERVATIONS_MEMORY:-1639M} volumes: mediastorage-private-vol: name: mediastorage-private-vol name: ${MEDIASTORAGE_PRIVATE_VOL_NAME:-mediastorage-private-vol} driver: "cloudstor:aws" driver_opts: backing: shared mediastorage-public-vol: name: mediastorage-public-vol name: ${MEDIASTORAGE_PUBLIC_VOL_NAME:-mediastorage-public-vol} driver: "cloudstor:aws" driver_opts: backing: shared Loading
.gitlab-ci.yml +26 −21 Original line number Diff line number Diff line Loading @@ -11,37 +11,42 @@ include: - project: 'redmic-project/gitlab-ci-templates' ref: master file: '/deployment.yml' - project: 'redmic-project/gitlab-ci-templates' ref: master file: '/deployment-custom-image.yml' stages: - build - license-list - pre-package - package - test-package - post-package - deploy variables: PROJECT_PARENT_NAME: api .maven-build: services: - name: postgres:${POSTGRES_IMAGE_TAG} alias: db variables: POSTGRES_IMAGE_TAG: 10.13-alpine POSTGRES_DB: redmic POSTGRES_USER: ${SPRING_DATASOURCE_USERNAME} POSTGRES_PASSWORD: ${SPRING_DATASOURCE_PASSWORD} LOGGING_LEVEL_ROOT: error LOGGING_LEVEL_ORG_SPRINGFRAMEWORK: error DOCKER_BUILD_ARGS: --build-arg PARENT_IMAGE_NAME=${REDMIC_SERVER_IMAGE_NAME} --build-arg PARENT_IMAGE_TAG=${REDMIC_SERVER_IMAGE_TAG} STACK: api STATUS_CHECK_DELAY: 300 .deploy: script: - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=${SPRING_PROFILES_ACTIVE} SPRING_DATASOURCE_USERNAME=${SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME=${JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD=${JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY=${AWS_ACCESS_KEY} AWS_SECRET_KEY=${AWS_SECRET_KEY} ELASTIC_XPACKSECURITYUSER=${ELASTIC_XPACKSECURITYUSER} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME} environment: url: https://${PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} .deploy-development: .docker-build: variables: SPRING_PROFILES_ACTIVE: pre DBLD_PARENT_IMAGE_NAME: ${REDMIC_SERVER_IMAGE_NAME} DBLD_PARENT_IMAGE_TAG: ${REDMIC_SERVER_IMAGE_TAG} .deploy-production: .deploy: variables: SPRING_PROFILES_ACTIVE: prod STACK: ${PROJECT_PARENT_NAME} SERVICES_TO_CHECK: ${PROJECT_PARENT_NAME}_${CI_PROJECT_NAME} STATUS_CHECK_DELAY: 300 environment: url: https://${PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME}
Dockerfile +8 −2 Original line number Diff line number Diff line ARG PARENT_IMAGE_NAME ARG PARENT_IMAGE_TAG ARG PARENT_IMAGE_NAME=registry.gitlab.com/redmic-project/docker/redmic-server ARG PARENT_IMAGE_TAG=latest FROM ${PARENT_IMAGE_NAME}:${PARENT_IMAGE_TAG} COPY /dist/*.jar ./ ARG MICROSERVICE_NAME=tasks ENV MICROSERVICE_NAME=${MICROSERVICE_NAME} ARG MICROSERVICE_PORT=8088 ENV MICROSERVICE_PORT=${MICROSERVICE_PORT} EXPOSE ${MICROSERVICE_PORT}
deploy/.env +3 −0 Original line number Diff line number Diff line PARENT_IMAGE_NAME=registry.gitlab.com/redmic-project/docker/redmic-server PARENT_IMAGE_TAG=latest MICROSERVICE_NAME=tasks MICROSERVICE_PORT=8088
deploy/docker-compose.dev.yml +11 −5 Original line number Diff line number Diff line Loading @@ -2,17 +2,23 @@ version: '3.5' services: tasks: environment: SPRING_PROFILES_ACTIVE: pre deploy: placement: constraints: - node.hostname == ${PLACEMENT_CONSTRAINTS_NODE_HOSTNAME:-hostname} resources: limits: cpus: '1' memory: 1G cpus: '${RESOURCES_LIMITS_CPUS:-1}' memory: ${RESOURCES_LIMITS_MEMORY:-1G} reservations: memory: 820M cpus: '${RESOURCES_RESERVATIONS_CPUS:-0.001}' memory: ${RESOURCES_RESERVATIONS_MEMORY:-820M} volumes: mediastorage-private-vol: name: mediastorage-private-vol name: ${MEDIASTORAGE_PRIVATE_VOL_NAME:-mediastorage-private-vol} mediastorage-public-vol: name: mediastorage-public-vol No newline at end of file name: ${MEDIASTORAGE_PUBLIC_VOL_NAME:-mediastorage-public-vol}
deploy/docker-compose.prod.yml +8 −8 Original line number Diff line number Diff line Loading @@ -2,26 +2,26 @@ version: '3.5' services: tasks: environment: SPRING_PROFILES_ACTIVE: prod deploy: placement: constraints: - node.role == worker resources: limits: cpus: '1' memory: 2G cpus: '${RESOURCES_LIMITS_CPUS:-1}' memory: ${RESOURCES_LIMITS_MEMORY:-2G} reservations: memory: 1639M cpus: '${RESOURCES_RESERVATIONS_CPUS:-0.01}' memory: ${RESOURCES_RESERVATIONS_MEMORY:-1639M} volumes: mediastorage-private-vol: name: mediastorage-private-vol name: ${MEDIASTORAGE_PRIVATE_VOL_NAME:-mediastorage-private-vol} driver: "cloudstor:aws" driver_opts: backing: shared mediastorage-public-vol: name: mediastorage-public-vol name: ${MEDIASTORAGE_PUBLIC_VOL_NAME:-mediastorage-public-vol} driver: "cloudstor:aws" driver_opts: backing: shared