language: ruby
dist: xenial
rvm: 2.5.3
cache:
bundler: true
env:
global:
- COVERAGE=1
matrix:
- INTEGRATION_SPECS=0
- INTEGRATION_SPECS=1
stages:
- test
- ':ship: it to Quay.io'
jobs:
allow_failures:
- script: ./script/docker-build-and-push
include:
- stage: test
env:
script: ./script/validate-example-payloads-with-docker
- stage: ':ship: it to Quay.io'
env:
script: ./script/docker-build-and-push
if: NOT type IN (pull_request) AND branch = master
before_script:
- eval "$(script/handle-docker-config)"
- bundle exec rake clean assets:precompile
script:
- bundle exec rspec spec
- bundle exec rake shfmt
- bundle exec rake assert_clean
- bundle exec rake shellcheck
- bundle exec rake assert_examples
after_success: bundle exec codeclimate-test-reporter
after_failure: bundle exec rake dump_examples_logs
before_deploy:
- sudo pip install -U -I Pygments
- ./script/build-s3-index-html
deploy:
provider: s3
access_key_id:
secure: fXt5NG5UGDvpnRFvUUk9J//iSo+Vh28oEUJvjZqiUZ9GRHp5TrIS5vL4bPlD/1RrJRp7BVVj1+4ThXZRzrMhF5xazK8k4ANaUhMdjmRa6arXtqBcXIyUvu//5e80nlXekqMKaW7f5wrLNiKZB+ck7ayGlI1NYLNQ5nCWC6Xxe6s=
secret_access_key:
secure: Jn9clQh78C2c1zoueTkn0r5kSCHrbb7bMojb8/Ne+6zg0pD/3w25mrhEC4y9b3M/lHoKArOPj4dn03ZErJleM8aOMNMIa6ck8GKP+7EoFlZ/1/C5733HazlldTWDd2+wTOYfSIGOM+mHDP5tmK0S7pr1zEm+/++UExuGZXiCSSI=
bucket: travis-build-examples
local_dir: examples
skip_cleanup: true
region: us-east-1
on:
branch: master
condition: $INTEGRATION_SPECS == 1
repo: travis-ci/travis-build
Cloud-CV/EvalAI:.travis.yml@1ed4c95
language: python
sudo: false
services:
- docker
- xvfb
python:
- '3.7.5'
cache:
directories:
- '$HOME/.cache/pip'
before_install:
- sudo rm -f /etc/boto.cfg
- export CHROME_BIN=chromium-browser
- export DISPLAY=:99.0
install:
- pip install awscli==1.18.66 flake8==3.8.2
script:
- flake8 ./ || travis_terminate 1;
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin || travis_terminate 1;
- docker-compose build || travis_terminate 1;
- docker-compose run nodejs bash -c "gulp dev && karma start --single-run && gulp staging" || travis_terminate 1;
- docker-compose run -e DJANGO_SETTINGS_MODULE=settings.test django pytest --cov . --cov-config .coveragerc || travis_terminate 1;
before_cache:
- rm -f $HOME/.cache/pip/log/debug.log
after_success:
- bash <(curl -s https://codecov.io/bash)
- coveralls --rcfile=.coveragerc
- eval "$(ssh-agent -s)"
- openssl aes-256-cbc -K $encrypted_77d2d82026f6_key -iv $encrypted_77d2d82026f6_iv
-in scripts/deployment/evalai.pem.enc -out scripts/deployment/evalai.pem -d || true
- './scripts/deployment/push.sh'
- './scripts/deployment/deploy.sh auto_deploy'
notifications:
email:
on_success: change
on_failure: always
slack: cloudcv:gy3CGQGNXLwXOqVyzXGZfdea
Build Config
{
"os": [
"linux"
],
"env": {
"global": [
{
"COVERAGE": "1"
}
],
"matrix": [
{
"INTEGRATION_SPECS": "0"
},
{
"INTEGRATION_SPECS": "1"
}
]
},
"rvm": [
"2.5.3"
],
"dist": "xenial",
"cache": {
"bundler": true
},
"deploy": [
{
"on": {
"repo": "travis-ci/travis-build",
"branch": [
"master"
],
"condition": [
"$INTEGRATION_SPECS == 1"
]
},
"bucket": "travis-build-examples",
"region": "us-east-1",
"provider": "s3",
"local_dir": "examples",
"skip_cleanup": true,
"access_key_id": {
"secure": "fXt5NG5UGDvpnRFvUUk9J//iSo+Vh28oEUJvjZqiUZ9GRHp5TrIS5vL4bPlD/1RrJRp7BVVj1+4ThXZRzrMhF5xazK8k4ANaUhMdjmRa6arXtqBcXIyUvu//5e80nlXekqMKaW7f5wrLNiKZB+ck7ayGlI1NYLNQ5nCWC6Xxe6s="
},
"secret_access_key": {
"secure": "Jn9clQh78C2c1zoueTkn0r5kSCHrbb7bMojb8/Ne+6zg0pD/3w25mrhEC4y9b3M/lHoKArOPj4dn03ZErJleM8aOMNMIa6ck8GKP+7EoFlZ/1/C5733HazlldTWDd2+wTOYfSIGOM+mHDP5tmK0S7pr1zEm+/++UExuGZXiCSSI="
}
}
],
"matrix": {
"include": [
{
"env": [
{}
],
"stage": "test",
"script": [
"./script/validate-example-payloads-with-docker"
]
},
{
"if": "NOT type IN (pull_request) AND branch = master",
"env": [
{}
],
"stage": ":ship: it to Quay.io",
"script": [
"./script/docker-build-and-push"
]
}
],
"allow_failures": [
{
"script": [
"./script/docker-build-and-push"
]
}
]
},
"script": [
"bundle exec rspec spec",
"bundle exec rake shfmt",
"bundle exec rake assert_clean",
"bundle exec rake shellcheck",
"bundle exec rake assert_examples"
],
"stages": [
{
"name": "test"
},
{
"name": ":ship: it to Quay.io"
}
],
"language": "ruby",
"after_failure": [
"bundle exec rake dump_examples_logs"
],
"after_success": [
"bundle exec codeclimate-test-reporter"
],
"before_deploy": [
"sudo pip install -U -I Pygments",
"./script/build-s3-index-html"
],
"before_script": [
"eval \"$(script/handle-docker-config)\"",
"bundle exec rake clean assets:precompile"
]
}