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

Corrige detalles y simplifica CI

parent ffe0888f
Loading
Loading
Loading
Loading
+36 −46
Original line number Diff line number Diff line
@@ -18,44 +18,33 @@ stages:
variables:
  STACK: vessel

deploy-support-branch-development:
.deploy-development:
  variables:
    COMPOSE_FILE: docker-compose.postgresql.tmpl.yml:docker-compose.postgresql.dev.yml
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}.dev.yml
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      POSTGRES_USER=${POSTGRES_USER} POSTGRES_PASSWORD=${POSTGRES_PASSWORD} INTERVAL=${INTERVAL}
  environment:
    name: dev/postgresql
    name: dev/${CI_PROJECT_NAME}

deploy-stable-branch-development:
.deploy-production:
  variables:
    COMPOSE_FILE: docker-compose.postgresql.tmpl.yml:docker-compose.postgresql.dev.yml
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      POSTGRES_USER=${POSTGRES_USER} POSTGRES_PASSWORD=${POSTGRES_PASSWORD} INTERVAL=${INTERVAL}
  environment:
    name: dev/postgresql

deploy-stable-branch-production:
  variables:
    COMPOSE_FILE: docker-compose.postgresql.tmpl.yml:docker-compose.postgresql.prod.yml
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}.prod.yml
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      POSTGRES_USER=${POSTGRES_USER} POSTGRES_PASSWORD=${POSTGRES_PASSWORD} INTERVAL=${INTERVAL}
      AWS_REGION=${AWS_REGION}
  environment:
    name: pro/postgresql
    name: pro/${CI_PROJECT_NAME}

deploy-backup-support-branch-development:
  extends: deploy-support-branch-development
.deploy-backup:
  extends: .deploy
  variables:
    SERVICES_TO_CHECK: ${STACK}_backup-db
    IMAGE_NAME: ${POSTGRES_BACKUP_IMAGE_NAME}
    IMAGE_TAG: ${POSTGRES_BACKUP_IMAGE_TAG}
    COMPOSE_FILE: docker-compose.backup-db.tmpl.yml:docker-compose.backup-db.dev.yml
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
@@ -63,43 +52,44 @@ deploy-backup-support-branch-development:
      POSTGRES_HOSTNAME=${POSTGRES_HOSTNAME} BUCKET_BACKUP_DB=${BUCKET_BACKUP_DB}
      AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
      PUSHGATEWAY_HOST=${PUSHGATEWAY_HOST} PUSHGATEWAY_JOB=${PUSHGATEWAY_JOB}
  environment:
    name: dev/backup-db

deploy-backup-stable-branch-development:
  extends: deploy-stable-branch-development
.deploy-backup-development:
  extends: .deploy-backup
  variables:
    SERVICES_TO_CHECK: ${STACK}_backup-db
    IMAGE_NAME: ${POSTGRES_BACKUP_IMAGE_NAME}
    IMAGE_TAG: ${POSTGRES_BACKUP_IMAGE_TAG}
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.backup-db.tmpl.yml:docker-compose.backup-db.dev.yml
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      AWS_REGION=${AWS_REGION} POSTGRES_USER=${POSTGRES_USER} POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      POSTGRES_HOSTNAME=${POSTGRES_HOSTNAME} BUCKET_BACKUP_DB=${BUCKET_BACKUP_DB}
      AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
      PUSHGATEWAY_HOST=${PUSHGATEWAY_HOST} PUSHGATEWAY_JOB=${PUSHGATEWAY_JOB}
  environment:
    name: dev/backup-db

deploy-backup-stable-branch-production:
  extends: deploy-stable-branch-production
.deploy-backup-production:
  extends: .deploy-backup
  variables:
    SERVICES_TO_CHECK: ${STACK}_backup-db
    IMAGE_NAME: ${POSTGRES_BACKUP_IMAGE_NAME}
    IMAGE_TAG: ${POSTGRES_BACKUP_IMAGE_TAG}
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    COMPOSE_FILE: docker-compose.backup-db.tmpl.yml:docker-compose.backup-db.prod.yml
  script:
    - >
      deploy.sh IMAGE_NAME=${IMAGE_NAME} IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
      AWS_REGION=${AWS_REGION} POSTGRES_USER=${POSTGRES_USER} POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      POSTGRES_HOSTNAME=${POSTGRES_HOSTNAME} BUCKET_BACKUP_DB=${BUCKET_BACKUP_DB}
      AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
      PUSHGATEWAY_HOST=${PUSHGATEWAY_HOST} PUSHGATEWAY_JOB=${PUSHGATEWAY_JOB}
  environment:
    name: pro/backup-db

deploy-backup-support-branch-development:
  extends: .deploy-backup-development
  only:
    - branches
  except:
    - master
    - schedules

deploy-backup-stable-branch-development:
  extends: .deploy-backup-development
  only:
    - master
  except:
    - schedules

deploy-backup-stable-branch-production:
  extends: .deploy-backup-production
  only:
    - master
  except:
    - schedules

scheduled-run-development:
  extends: scheduled-run-production
  script: ":"
+26 −17
Original line number Diff line number Diff line
@@ -5,22 +5,31 @@ LABEL maintainer="info@redmic.es"
ENV PG_CRON_VERSION="1.1.4" \
	PG_PARTMAN_VERSION="4.0.0"

RUN apk add --no-cache --virtual .build-deps build-base ca-certificates openssl tar \
	    && wget -O /pg_cron.tgz https://github.com/citusdata/pg_cron/archive/v${PG_CRON_VERSION}.tar.gz \
	    && tar xvzf /pg_cron.tgz && cd pg_cron-$PG_CRON_VERSION \
	    && sed -i.bak -e 's/-Werror//g' Makefile \
	    && sed -i.bak -e 's/-Wno-implicit-fallthrough//g' Makefile \
	    && make && make install \
	    && cd .. && rm -rf pg_cron.tgz && rm -rf pg_cron-* \
	    && wget -O /pg_partman.tgz https://github.com/pgpartman/pg_partman/archive/v${PG_PARTMAN_VERSION}.tar.gz \
	    && tar xvzf /pg_partman.tgz \
	    && cd pg_partman-$PG_PARTMAN_VERSION \
	    && make \
	    && make install \
	    && cd .. && rm -rf pg_partman.tgz && rm -rf pg_partman-* \
	    && echo "shared_preload_libraries='pg_partman_bgw,pg_cron'" >> /usr/local/share/postgresql/postgresql.conf.sample \
	    && echo "checkpoint_timeout = 30min" >> /usr/local/share/postgresql/postgresql.conf.sample \
	    && echo "max_wal_size = 2GB" >> /usr/local/share/postgresql/postgresql.conf.sample \
	    && mv /usr/local/bin/docker-entrypoint.sh /usr/local/bin/docker-entrypoint-origin.sh
RUN apk add --no-cache --virtual \
		.build-deps \
		build-base \
		ca-certificates \
		openssl \
		tar && \
	wget -O /pg_cron.tgz https://github.com/citusdata/pg_cron/archive/v${PG_CRON_VERSION}.tar.gz && \
	tar xvzf /pg_cron.tgz && \
	cd pg_cron-${PG_CRON_VERSION} && \
	sed -i.bak -e 's/-Werror//g' Makefile && \
	sed -i.bak -e 's/-Wno-implicit-fallthrough//g' Makefile && \
	make && \
	make install && \
	cd .. && \
	rm -rf pg_cron.tgz pg_cron-* && \
	wget -O /pg_partman.tgz https://github.com/pgpartman/pg_partman/archive/v${PG_PARTMAN_VERSION}.tar.gz && \
	tar xvzf /pg_partman.tgz && \
	cd pg_partman-${PG_PARTMAN_VERSION} && \
	make && \
	make install && \
	cd .. && \
	rm -rf pg_partman.tgz pg_partman-* && \
	echo "shared_preload_libraries='pg_partman_bgw,pg_cron'" >> /usr/local/share/postgresql/postgresql.conf.sample && \
	echo "checkpoint_timeout = 30min" >> /usr/local/share/postgresql/postgresql.conf.sample && \
	echo "max_wal_size = 2GB" >> /usr/local/share/postgresql/postgresql.conf.sample && \
	mv /usr/local/bin/docker-entrypoint.sh /usr/local/bin/docker-entrypoint-origin.sh

COPY rootfs /
+1 −1

File changed.

Contains only whitespace changes.