Commit 60e16582 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Merge branch 'dev' into 'master'

Generaliza job programable para cualquier acción

See merge request redmic-project/elastic/curator!1
parents 8fbaa730 274945bf
Loading
Loading
Loading
Loading

.gitlab-ci.yml

0 → 100644
+145 −0
Original line number Diff line number Diff line
stages:
  - deploy
  - maintenance

image: docker:stable

variables:
  DOCKER_DRIVER: overlay2
  STACK: elastic
  SERVICES_TO_CHECK: elastic_${CI_PROJECT_NAME}
  STATUS_CHECK_DELAY: 30
  IMAGE_TAG: ${CURATOR_IMAGE_TAG:-5.6.0}

services:
  - docker:dind

deploy-curator-delete-old-logs-supporting-branch-develop:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml
    ELASTICSEARCH_URL: ${DEV_ELASTICSEARCH_URL}
    ELASTICSEARCH_AUTH: ${DEV_ELASTICSEARCH_USERNAME}:${DEV_ELASTICSEARCH_PASSWORD}
    DELETE_OLD_LOGS_DISABLE: 'False'
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      ELASTICSEARCH_URL=${ELASTICSEARCH_URL} ELASTICSEARCH_AUTH=${ELASTICSEARCH_AUTH}
      DELETE_OLD_LOGS_DISABLE=${DELETE_OLD_LOGS_DISABLE}
  environment:
    name: dev
  only:
    - branches
  except:
    - master
    - schedules
  when: manual

deploy-curator-delete-old-logs-stable-branch-develop:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml
    ELASTICSEARCH_URL: ${DEV_ELASTICSEARCH_URL}
    ELASTICSEARCH_AUTH: ${DEV_ELASTICSEARCH_USERNAME}:${DEV_ELASTICSEARCH_PASSWORD}
    DELETE_OLD_LOGS_DISABLE: 'False'
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      ELASTICSEARCH_URL=${ELASTICSEARCH_URL} ELASTICSEARCH_AUTH=${ELASTICSEARCH_AUTH}
      DELETE_OLD_LOGS_DISABLE=${DELETE_OLD_LOGS_DISABLE}
  environment:
    name: dev
  only:
    - master
  except:
    - schedules
  when: manual

deploy-curator-delete-old-logs-supporting-branch-production:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml
    ELASTICSEARCH_URL: ${PRO_ELASTICSEARCH_URL}
    ELASTICSEARCH_AUTH: ${PRO_ELASTICSEARCH_USERNAME}:${PRO_ELASTICSEARCH_PASSWORD}
    DELETE_OLD_LOGS_DISABLE: 'False'
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      ELASTICSEARCH_URL=${ELASTICSEARCH_URL} ELASTICSEARCH_AUTH=${ELASTICSEARCH_AUTH}
      DELETE_OLD_LOGS_DISABLE=${DELETE_OLD_LOGS_DISABLE}
  environment:
    name: pro
  only:
    - branches
  except:
    - master
    - schedules
  when: manual

deploy-curator-delete-old-logs-stable-branch-production:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml
    ELASTICSEARCH_URL: ${PRO_ELASTICSEARCH_URL}
    ELASTICSEARCH_AUTH: ${PRO_ELASTICSEARCH_USERNAME}:${PRO_ELASTICSEARCH_PASSWORD}
    DELETE_OLD_LOGS_DISABLE: 'False'
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      ELASTICSEARCH_URL=${ELASTICSEARCH_URL} ELASTICSEARCH_AUTH=${ELASTICSEARCH_AUTH}
      DELETE_OLD_LOGS_DISABLE=${DELETE_OLD_LOGS_DISABLE}
  environment:
    name: pro
  only:
    - master
  except:
    - schedules
  when: manual

scheduled-deploy-curator-stable-branch-develop:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.dev.yml
    ELASTICSEARCH_URL: ${DEV_ELASTICSEARCH_URL}
    ELASTICSEARCH_AUTH: ${DEV_ELASTICSEARCH_USERNAME}:${DEV_ELASTICSEARCH_PASSWORD}
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      ELASTICSEARCH_URL=${ELASTICSEARCH_URL} ELASTICSEARCH_AUTH=${ELASTICSEARCH_AUTH}
      DELETE_OLD_LOGS_DISABLE=${DELETE_OLD_LOGS_DISABLE:-True}
  environment:
    name: dev
  only:
    - master
    - schedules
  when: manual

scheduled-deploy-curator-stable-branch-production:
  stage: deploy
  image: registry.gitlab.com/redmic-project/docker/docker-deploy:latest
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.tmpl.yml:docker-compose.prod.yml
    ELASTICSEARCH_URL: ${PRO_ELASTICSEARCH_URL}
    ELASTICSEARCH_AUTH: ${PRO_ELASTICSEARCH_USERNAME}:${PRO_ELASTICSEARCH_PASSWORD}
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      ELASTICSEARCH_URL=${ELASTICSEARCH_URL} ELASTICSEARCH_AUTH=${ELASTICSEARCH_AUTH}
      DELETE_OLD_LOGS_DISABLE=${DELETE_OLD_LOGS_DISABLE:-True}
  environment:
    name: pro
  only:
    - master
    - schedules
  when: manual

deploy/.env

0 → 100644
+6 −0
Original line number Diff line number Diff line
ELASTICSEARCH_URL=http://elasticsearch
ELASTICSEARCH_AUTH=user:pass
ELASTICSEARCH_PORT=9200
CURATOR_TIMEOUT=60
DELETE_OLD_LOGS_DISABLE=False
DELETE_OLD_LOGS_DAYS_COUNT=30
+25 −0
Original line number Diff line number Diff line
---
actions:
  1:
    action: delete_indices
    description: >-
      Delete indices older than ${DELETE_OLD_LOGS_DAYS_COUNT} (30 by default) days (based on index name), for 'fluentd-'
      prefixed indices. Ignore the error if the filter does not result in an actionable list of indices
      (ignore_empty_list) and exit cleanly.
    options:
      ignore_empty_list: True
      timeout_override:
      continue_if_exception: False
      disable_action: ${DELETE_OLD_LOGS_DISABLE:False}
    filters:
    - filtertype: pattern
      kind: prefix
      value: fluentd-
      exclude:
    - filtertype: age
      source: name
      direction: older
      timestring: '%Y%m%d'
      unit: days
      unit_count: ${DELETE_OLD_LOGS_DAYS_COUNT:30}
      exclude:
+20 −0
Original line number Diff line number Diff line
---
client:
  hosts:
    - ${ELASTICSEARCH_URL}
  port: ${ELASTICSEARCH_PORT}
  url_prefix:
  use_ssl: False
  certificate:
  client_cert:
  client_key:
  ssl_no_validate: False
  http_auth: ${ELASTICSEARCH_AUTH}
  timeout: ${CURATOR_TIMEOUT}
  master_only: False

logging:
  loglevel: INFO
  logfile:
  logformat: default
  blacklist: ['elasticsearch', 'urllib3']
+1 −0
Original line number Diff line number Diff line
version: '3.5'
Loading