Commit d053a517 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Actualiza detalles de deploy y lo parametriza

parent b212c9a6
Loading
Loading
Loading
Loading
+23 −42
Original line number Diff line number Diff line
image: docker:stable

stages:
  - check-rules
  - package
  - test-package
  - deploy

image: docker:stable

services:
  - docker:dind

variables:
  DOCKER_DRIVER: overlay2
  STACK: metric
  SERVICES_TO_CHECK: metric_prometheus
  STATUS_CHECK_DELAY: 60
  IMAGE_NAME: ${CI_REGISTRY_IMAGE}
  IMAGE_TAG: ${CI_COMMIT_SHA}

check-rules:
  stage: check-rules
@@ -63,16 +68,10 @@ deploy-supporting-branch-develop:
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    STACK: metric
    SERVICES_TO_CHECK: metric_prometheus
    STATUS_CHECK_DELAY: 60
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml
    UI_AUTH: ${DEV_UI_AUTH}
    PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME}
  script:
    - create-nets.sh metric-net
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      UI_AUTH=${UI_AUTH} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
@@ -85,55 +84,43 @@ deploy-supporting-branch-develop:
    - master
  when: manual

deploy-supporting-branch-production:
deploy-stable-branch-develop:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    STACK: metric
    SERVICES_TO_CHECK: metric_prometheus
    STATUS_CHECK_DELAY: 60
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml
    UI_AUTH: ${PRO_UI_AUTH}
    PUBLIC_HOSTNAME: ${PRO_PUBLIC_HOSTNAME}
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml
    UI_AUTH: ${DEV_UI_AUTH}
    PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME}
  script:
    - create-nets.sh metric-net
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      UI_AUTH=${UI_AUTH} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: pro
    url: https://prometheus.${PRO_PUBLIC_HOSTNAME}
    name: dev
    url: https://prometheus.${DEV_PUBLIC_HOSTNAME}
  only:
    - branches
  except:
    - master
  when: manual

deploy-stable-branch-develop:
deploy-supporting-branch-production:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    STACK: metric
    SERVICES_TO_CHECK: metric_prometheus
    STATUS_CHECK_DELAY: 60
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml
    UI_AUTH: ${DEV_UI_AUTH}
    PUBLIC_HOSTNAME: ${DEV_PUBLIC_HOSTNAME}
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml
    UI_AUTH: ${PRO_UI_AUTH}
    PUBLIC_HOSTNAME: ${PRO_PUBLIC_HOSTNAME}
  script:
    - create-nets.sh metric-net
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      UI_AUTH=${UI_AUTH} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
  environment:
    name: dev
    url: https://prometheus.${DEV_PUBLIC_HOSTNAME}
    name: pro
    url: https://prometheus.${PRO_PUBLIC_HOSTNAME}
  only:
    - branches
  except:
    - master
  when: manual

@@ -142,16 +129,10 @@ deploy-stable-branch-production:
  image: registry.gitlab.com/redmic-project/docker/docker-deploy
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    STACK: metric
    SERVICES_TO_CHECK: metric_prometheus
    STATUS_CHECK_DELAY: 60
    IMAGE_NAME: ${CI_REGISTRY_IMAGE}
    IMAGE_TAG: ${CI_COMMIT_SHA}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml
    UI_AUTH: ${PRO_UI_AUTH}
    PUBLIC_HOSTNAME: ${PRO_PUBLIC_HOSTNAME}
  script:
    - create-nets.sh metric-net
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      UI_AUTH=${UI_AUTH} PUBLIC_HOSTNAME=${PUBLIC_HOSTNAME}
+1 −0
Original line number Diff line number Diff line
JOBS=api:8080/api/actuator/prometheus,oauth:8081/api/oauth/actuator/prometheus,user:8082/api/user/actuator/prometheus,vessels-commands:8091/api/vessels/commands/actuator/prometheus,vessels-view:8092/api/vessels/view/actuator/prometheus,web:3050/metrics,socket:8089/api/socket/actuator/prometheus,tasks:8088/api/tasks/actuator/prometheus,ais:8090/api/ais/actuactor/prometheus
STORAGE_TSDB_RETENTION=30d
 No newline at end of file
+1 −1
Original line number Diff line number Diff line
@@ -2,4 +2,4 @@ version: '3.5'

volumes:
  prometheus:
    name: prometheus-vol
    name: ${PROMETHEUS_VOL_NAME:-prometheus-vol}
+4 −4
Original line number Diff line number Diff line
@@ -9,9 +9,9 @@ services:

volumes:
  prometheus:
    name: prometheus-vol
    driver: "cloudstor:aws"
    name: ${PROMETHEUS_VOL_NAME:-prometheus-vol}
    driver: 'cloudstor:aws'
    driver_opts:
      backing: relocatable
      size: 10
      ebstype: gp2
      size: ${PROMETHEUS_VOL_SIZE:-10}
      ebstype: ${PROMETHEUS_VOL_EBS_TYPE:-gp2}
+13 −7
Original line number Diff line number Diff line
@@ -8,8 +8,8 @@ services:
      - '--web.console.libraries=/etc/prometheus/console_libraries'
      - '--web.console.templates=/etc/prometheus/consoles'
      - '--storage.tsdb.path=/prometheus'
      - '--storage.tsdb.retention=30d'
    user: "0:0"
      - '--storage.tsdb.retention=${STORAGE_TSDB_RETENTION}'
    user: '0:0'
    networks:
      - metric-net
      - traefik-net
@@ -30,14 +30,13 @@ services:
      mode: replicated
      replicas: 1
      labels:
        traefik.docker.network: traefik-net
        traefik.frontend.auth.basic.users: ${UI_AUTH}
        traefik.frontend.rule: Host:prometheus.${PUBLIC_HOSTNAME}
        traefik.backend: prometheus
        traefik.port: "9090"
        traefik.port: '9090'
      restart_policy:
        delay: 1m
        window: 3m
        delay: 30s
        window: 2m
      resources:
        limits:
          cpus: '1'
@@ -47,20 +46,27 @@ services:

networks:
  metric-net:
    external: true
    name: ${METRIC_NET_NAME:-metric-net}
    driver: overlay
    attachable: ${METRIC_NET_ATTACHABLE:-true}

  traefik-net:
    name: ${TRAEFIK_NET_NAME:-traefik-net}
    external: true

configs:
  node_rules:
    name: ${NODE_RULES_NAME:-node_rules}
    file: ./rules/swarm_node.rules.yml

  task_rules:
    name: ${TASK_RULES_NAME:-task_rules}
    file: ./rules/swarm_task.rules.yml

  job_rules:
    name: ${JOB_RULES_NAME:-job_rules}
    file: ./rules/swarm_job.rules.yml

  service_rules:
    name: ${SERVICE_RULES_NAME:-service_rules}
    file: ./rules/swarm_service.rules.yml
 No newline at end of file