Loading .gitlab-ci.yml +31 −8 Original line number Diff line number Diff line Loading @@ -8,15 +8,23 @@ maven-build: stage: build image: redmic/maven-gitlab variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test MAVEN_OPTS: "-Dmaven.repo.local=.m2/repository -Dspring.datasource.username=${DEV_SPRING_DATASOURCE_USERNAME} -Dspring.datasource.password=${DEV_SPRING_DATASOURCE_PASSWORD}" SPRING_DATASOURCE_USERNAME: ${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD: ${DEV_SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME: ${DEV_JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD: ${DEV_JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY: ${DEV_AWS_ACCESS_KEY} AWS_SECRET_KEY: ${DEV_AWS_SECRET_KEY} only: - branches except: - master cache: paths: - .m2/repository/ script: - mvn verify ${MAVEN_OPTS} spring-boot:repackage -B ${MAVEN_OPTS} - mvn verify spring-boot:repackage -B - "COVERAGE=$(xmllint --html --xpath '//table[@id=\"coveragetable\"]/tfoot//td[@class=\"ctr2\"][1]/text()' target/site/jacoco/index.html)" - 'echo "Coverage: ${COVERAGE}"' after_script: Loading Loading @@ -90,13 +98,18 @@ deploy-dev: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${DOCKER_ENV_CI_REGISTRY_IMAGE} IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml services: - docker:dind script: - deploy.sh SPRING_PROFILES_ACTIVE=pre IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_DATASOURCE_USERNAME=${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${DEV_SPRING_DATASOURCE_PASSWORD} - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=pre SPRING_DATASOURCE_USERNAME=${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${DEV_SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME=${DEV_JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD=${DEV_JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY=${DEV_AWS_ACCESS_KEY} AWS_SECRET_KEY=${DEV_AWS_SECRET_KEY} environment: name: dev url: https://appdev.${DEV_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} Loading @@ -110,13 +123,18 @@ deploy-supporting-branch: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${DOCKER_ENV_CI_REGISTRY_IMAGE} IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml services: - docker:dind script: - deploy.sh SPRING_PROFILES_ACTIVE=pre IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_DATASOURCE_USERNAME=${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${DEV_SPRING_DATASOURCE_PASSWORD} - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=pre SPRING_DATASOURCE_USERNAME=${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${DEV_SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME=${DEV_JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD=${DEV_JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY=${DEV_AWS_ACCESS_KEY} AWS_SECRET_KEY=${DEV_AWS_SECRET_KEY} environment: name: dev url: https://appdev.${DEV_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} Loading @@ -134,13 +152,18 @@ deploy-pro: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${DOCKER_ENV_CI_REGISTRY_IMAGE} IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_TAG} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml services: - docker:dind script: - deploy.sh SPRING_PROFILES_ACTIVE=prod IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_DATASOURCE_USERNAME=${PRO_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${PRO_SPRING_DATASOURCE_PASSWORD} - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=prod SPRING_DATASOURCE_USERNAME=${PRO_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${PRO_SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME=${PRO_JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD=${PRO_JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY=${PRO_AWS_ACCESS_KEY} AWS_SECRET_KEY=${PRO_AWS_SECRET_KEY} environment: name: pro url: https://${PRO_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} Loading Dockerfile +3 −4 Original line number Diff line number Diff line Loading @@ -2,9 +2,8 @@ FROM redmic/redmic-server COPY /dist/*.jar ./ EXPOSE 8080 EXPOSE ${MICROSERVICE_PORT} ENTRYPOINT java $JAVA_OPTS \ ENTRYPOINT java ${JAVA_OPTS} \ -Djava.security.egd=file:/dev/./urandom \ -Dlogging.level.org.springframework=${LOG_LEVEL} \ -jar ${DIRPATH}/tasks.jar -jar ${DIRPATH}/${MICROSERVICE_NAME}.jar docker-compose.tmpl.yml +6 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,12 @@ services: image: registry.redmic.net/redmic-server/${MICROSERVICE_NAME}:${IMAGE_TAG:-latest} environment: - SPRING_PROFILES_ACTIVE - SPRING_DATASOURCE_USERNAME - SPRING_DATASOURCE_PASSWORD - JOBS_DATASOURCE_USERNAME - JOBS_DATASOURCE_PASSWORD - AWS_ACCESS_KEY - AWS_SECRET_KEY - JAVA_OPTS=-Xmx1g -Xss1g networks: - elastic-net Loading Loading
.gitlab-ci.yml +31 −8 Original line number Diff line number Diff line Loading @@ -8,15 +8,23 @@ maven-build: stage: build image: redmic/maven-gitlab variables: MAVEN_OPTS: -Dmaven.repo.local=.m2/repository SPRING_PROFILES_ACTIVE: test MAVEN_OPTS: "-Dmaven.repo.local=.m2/repository -Dspring.datasource.username=${DEV_SPRING_DATASOURCE_USERNAME} -Dspring.datasource.password=${DEV_SPRING_DATASOURCE_PASSWORD}" SPRING_DATASOURCE_USERNAME: ${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD: ${DEV_SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME: ${DEV_JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD: ${DEV_JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY: ${DEV_AWS_ACCESS_KEY} AWS_SECRET_KEY: ${DEV_AWS_SECRET_KEY} only: - branches except: - master cache: paths: - .m2/repository/ script: - mvn verify ${MAVEN_OPTS} spring-boot:repackage -B ${MAVEN_OPTS} - mvn verify spring-boot:repackage -B - "COVERAGE=$(xmllint --html --xpath '//table[@id=\"coveragetable\"]/tfoot//td[@class=\"ctr2\"][1]/text()' target/site/jacoco/index.html)" - 'echo "Coverage: ${COVERAGE}"' after_script: Loading Loading @@ -90,13 +98,18 @@ deploy-dev: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${DOCKER_ENV_CI_REGISTRY_IMAGE} IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml services: - docker:dind script: - deploy.sh SPRING_PROFILES_ACTIVE=pre IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_DATASOURCE_USERNAME=${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${DEV_SPRING_DATASOURCE_PASSWORD} - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=pre SPRING_DATASOURCE_USERNAME=${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${DEV_SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME=${DEV_JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD=${DEV_JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY=${DEV_AWS_ACCESS_KEY} AWS_SECRET_KEY=${DEV_AWS_SECRET_KEY} environment: name: dev url: https://appdev.${DEV_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} Loading @@ -110,13 +123,18 @@ deploy-supporting-branch: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${DEV_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${DOCKER_ENV_CI_REGISTRY_IMAGE} IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_SHA} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml services: - docker:dind script: - deploy.sh SPRING_PROFILES_ACTIVE=pre IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_DATASOURCE_USERNAME=${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${DEV_SPRING_DATASOURCE_PASSWORD} - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=pre SPRING_DATASOURCE_USERNAME=${DEV_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${DEV_SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME=${DEV_JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD=${DEV_JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY=${DEV_AWS_ACCESS_KEY} AWS_SECRET_KEY=${DEV_AWS_SECRET_KEY} environment: name: dev url: https://appdev.${DEV_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} Loading @@ -134,13 +152,18 @@ deploy-pro: DOCKER_DRIVER: overlay2 SSH_REMOTE: ${PRO_SSH_REMOTE} SERVICE: ${CI_PROJECT_NAME} IMAGE_NAME: ${DOCKER_ENV_CI_REGISTRY_IMAGE} IMAGE_NAME: ${CI_REGISTRY_IMAGE} IMAGE_TAG: ${CI_COMMIT_TAG} COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml services: - docker:dind script: - deploy.sh SPRING_PROFILES_ACTIVE=prod IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_DATASOURCE_USERNAME=${PRO_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${PRO_SPRING_DATASOURCE_PASSWORD} - > deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} SPRING_PROFILES_ACTIVE=prod SPRING_DATASOURCE_USERNAME=${PRO_SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD=${PRO_SPRING_DATASOURCE_PASSWORD} JOBS_DATASOURCE_USERNAME=${PRO_JOBS_DATASOURCE_USERNAME} JOBS_DATASOURCE_PASSWORD=${PRO_JOBS_DATASOURCE_PASSWORD} AWS_ACCESS_KEY=${PRO_AWS_ACCESS_KEY} AWS_SECRET_KEY=${PRO_AWS_SECRET_KEY} environment: name: pro url: https://${PRO_PUBLIC_HOSTNAME}/api/${CI_PROJECT_NAME} Loading
Dockerfile +3 −4 Original line number Diff line number Diff line Loading @@ -2,9 +2,8 @@ FROM redmic/redmic-server COPY /dist/*.jar ./ EXPOSE 8080 EXPOSE ${MICROSERVICE_PORT} ENTRYPOINT java $JAVA_OPTS \ ENTRYPOINT java ${JAVA_OPTS} \ -Djava.security.egd=file:/dev/./urandom \ -Dlogging.level.org.springframework=${LOG_LEVEL} \ -jar ${DIRPATH}/tasks.jar -jar ${DIRPATH}/${MICROSERVICE_NAME}.jar
docker-compose.tmpl.yml +6 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,12 @@ services: image: registry.redmic.net/redmic-server/${MICROSERVICE_NAME}:${IMAGE_TAG:-latest} environment: - SPRING_PROFILES_ACTIVE - SPRING_DATASOURCE_USERNAME - SPRING_DATASOURCE_PASSWORD - JOBS_DATASOURCE_USERNAME - JOBS_DATASOURCE_PASSWORD - AWS_ACCESS_KEY - AWS_SECRET_KEY - JAVA_OPTS=-Xmx1g -Xss1g networks: - elastic-net Loading