stages: - test # For use in multiple jobs when webserver is needed .run_webserver: &run_webserver image: composer:1 before_script: # Get ip of your webapp container and export it as $WEB_APP_IP env var for use in codeception config - export WEB_APP_IP="$(ifconfig | grep -A 1 'eth0' | tail -1 | cut -d ':' -f 2 | cut -d ' ' -f 1)" - composer install - ./flow server:run --host 0.0.0.0 --port 8081 & # Wait for webserver to get ready - sleep 10 codeception: <<: *run_webserver # Merge content of 'run_webserver' stage: test services: - name: selenium/standalone-chrome alias: selenium variables: SELENIUM_HOST: 'selenium' script: - echo $WEB_APP_IP - composer install - echo "Run acceptance tests" - bin/codecept run acceptance - echo "Run api tests" - bin/codecept run api artifacts: paths: - tests/_output/ expire_in: 2 weeks