Commit 32bb4cb2 authored by Noel Alonso's avatar Noel Alonso
Browse files

Arranca dependencias para testing en CI

parent c9dc2f68
Loading
Loading
Loading
Loading
+74 −0
Original line number Diff line number Diff line
@@ -33,8 +33,82 @@ variables:

.maven-build:
  variables:
    POSTGRES_IMAGE_TAG: 10.13-alpine
    POSTGRES_DB: redmic
    POSTGRES_USER: postgres
    POSTGRES_PASSWORD: password
    OAUTH_IMAGE_NAME: registry.gitlab.com/redmic-project/server/oauth/master
    OAUTH_IMAGE_TAG: latest
    OAUTH_CLIENT_ID: oauth_id
    OAUTH_CLIENT_SECRET: oauth_secret
    DIND_IMAGE_NAME: docker
    DIND_IMAGE_TAG: dind
    DOCKER_HOST: tcp://docker:2375
    OAUTH_SERVER: http://docker:8081
    SPRING_DATASOURCE_URL: jdbc:postgresql://docker:5432/redmic?stringtype=unspecified
    GITLAB_REGISTRY_HOST: registry.gitlab.com
    CI_DEPLOY_USER: ci_deploy_user
    CI_DEPLOY_PASSWORD: ci_deploy_password
    LOGGING_LEVEL_ROOT: error
    LOGGING_LEVEL_ORG_SPRINGFRAMEWORK: error
  services:
    - ${DIND_IMAGE_NAME}:${DIND_IMAGE_TAG}
  before_script:
    - >
      mkdir -p sql;
      chmod -R 755 sql;
      docker network create test
    - >
      docker run -d --rm --name postgres \
        -p 5432:5432 \
        --network test \
        --network-alias db \
        -e POSTGRES_DB \
        -e POSTGRES_USER \
        -e POSTGRES_PASSWORD \
        -v $(pwd)/sql:/sql \
        postgres:${POSTGRES_IMAGE_TAG}
    - >
      curl -s --header "PRIVATE-TOKEN: ${GITLAB_TOKEN_READ_API}" \
        -o sql/oauth_database_structure_test.sql \
        "https://gitlab.com/api/v4/snippets/${OAUTH_DATABASE_STRUCTURE_TEST_SNIPPET_ID}/raw";
      curl -s --header "PRIVATE-TOKEN: ${GITLAB_TOKEN_READ_API}" \
        -o sql/oauth_database_data_test.sql \
        "https://gitlab.com/api/v4/snippets/${OAUTH_DATABASE_DATA_TEST_SNIPPET_ID}/raw";
    - >
      RETRIES=10;
      until docker exec postgres psql -h localhost \
          -d redmic \
          -U ${POSTGRES_USER} \
          -c 'select 1' > /dev/null 2>&1 || [ $RETRIES -eq 0 ];
      do
          RETRIES=$((RETRIES-=1));
          echo "Waiting for postgres server, ${RETRIES} remaining attempts...";
          sleep 1;
      done;
      docker exec postgres psql -h localhost \
        -d redmic \
        -U ${POSTGRES_USER} \
        -f /sql/oauth_database_structure_test.sql;
      docker exec postgres psql -h localhost \
        -d redmic \
        -U ${POSTGRES_USER} \
        -c "ALTER ROLE ${USER_SPRING_DATASOURCE_USERNAME} WITH PASSWORD '${USER_SPRING_DATASOURCE_PASSWORD}'";
      docker exec postgres psql -h localhost \
        -d redmic \
        -U ${POSTGRES_USER} \
        -f /sql/oauth_database_data_test.sql;
    - >
      docker run -d --rm --name oauth \
        -p 8081:8081 \
        --network test \
        -e SPRING_PROFILES_ACTIVE=dev \
        -e SPRING_DATASOURCE_USERNAME=${USER_SPRING_DATASOURCE_USERNAME} \
        -e SPRING_DATASOURCE_PASSWORD=${USER_SPRING_DATASOURCE_PASSWORD} \
        ${OAUTH_IMAGE_NAME}:${OAUTH_IMAGE_TAG}
  after_script:
    - rm -rf .m2/repository/es
    - docker stop oauth postgres

.deploy:
  variables:
+2 −0
Original line number Diff line number Diff line
@@ -9,6 +9,8 @@ spring.kafka.properties.schema.registry.url=http://localhost:${schema.registry.p

test.user.ADMINISTRATOR=administrator@redmic.es
test.user.OPERATOR=operator@redmic.es
#TODO: eliminar cuando se cambie OAG por OPERATOR en librería test
test.user.OAG=operator@redmic.es
test.user.COLLABORATOR=collaborator@redmic.es
test.user.USER=user@redmic.es
test.user.PASSWORD=test.user.PASSWORD