Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- test:e2e:
- stage: test
- except:
- - master
- image: circleci/node:10.14-browsers
- before_script:
- - DOCKER_HOST=`ip route | awk '/default/ { print $3 }'`
- - sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose # Instal docker-compose
- - sudo chmod +x /usr/local/bin/docker-compose # Give permissions to docker-compose
- - sudo docker login -u $CI_DEPLOY_USER -p $CI_DEPLOY_PASSWORD $CI_REGISTRY # Login to docker with deploy token (required token from core/java project, configured in Gitlab's variables)
- - git clone https://gitlab-ci-token:${CI_JOB_TOKEN}@git.sinergise.com/sentinel/core/java --depth 1 # Clone core/java services
- - sed -i "s/\${VERSION}/test/g" $DOCKER_COMPOSE_YML # Set docker images tag to test
- - sudo docker-compose -f $DOCKER_COMPOSE_YML rm -f -s # Ensure we get "fresh" containers
- - sudo docker-compose -f $DOCKER_COMPOSE_YML pull # Pull lastest images
- - sudo docker-compose -f $DOCKER_COMPOSE_YML up -d db # Start postgres on PORT 5432
- - node_modules/wait-on/bin/wait-on tcp:${DOCKER_HOST}:5432
- - sudo docker-compose -f $DOCKER_COMPOSE_YML exec -T db bash -c "PGPASSWORD=ICanHazPicturez123 PGUSER=postgres ./wait_for_db.sh postgres" # Wait for postgres, so the services dont try to connect before it is bootstrapped
- - sudo docker-compose -f $DOCKER_COMPOSE_YML up -d # Run core/java services
- - sed -i "s/\${HOSTNAME}/${DOCKER_HOST}/g" src/environments/e2e.json # Link frontend config file to services
- - node_modules/gulp/bin/gulp.js --gulpfile ./gulpfile.js setE2E
- script:
- - BROWSER=none yarn start 2>&1 > /dev/null & # Start Dashboard app in background
- - node_modules/wait-on/bin/wait-on http-get://localhost:3000 # Wait for app development server to start serving
- - node_modules/wait-on/bin/wait-on http-get://${DOCKER_HOST}:8080/oauth/status # Wait for IdentityService (the slowest one)
- - yarn test:e2e:headless # Run e2e tests in headless mode
- after_script:
- - sudo docker-compose -f $DOCKER_COMPOSE_YML rm -f -s # Stop and remove all core/java service containers
- dependencies:
- - install_packages_and_run_linters
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement