2018-06-20 02:22:35 +00:00
|
|
|
sudo: required
|
2017-10-16 03:35:58 +00:00
|
|
|
language: node_js
|
|
|
|
node_js:
|
2018-06-19 22:22:18 +00:00
|
|
|
- "8.11.1"
|
2018-06-25 23:13:31 +00:00
|
|
|
python:
|
|
|
|
- "3.4"
|
|
|
|
- "pypy-5.3.1"
|
2018-06-19 22:22:18 +00:00
|
|
|
|
|
|
|
services:
|
|
|
|
- docker
|
|
|
|
|
|
|
|
before_install:
|
|
|
|
# eventually set up AWS stuff here
|
2018-06-20 17:01:11 +00:00
|
|
|
- docker-compose -f docker-compose-development.yml up -d
|
2018-06-19 22:22:18 +00:00
|
|
|
- docker ps -a
|
|
|
|
|
2018-06-20 03:01:04 +00:00
|
|
|
install: true
|
|
|
|
|
2018-06-20 02:22:35 +00:00
|
|
|
script:
|
|
|
|
# Run unit tests in the app container
|
|
|
|
- docker-compose exec -T app npm run test --verbose
|
|
|
|
|
2018-06-20 17:01:11 +00:00
|
|
|
after_success:
|
2018-06-25 23:13:31 +00:00
|
|
|
# only run this if on the master branch eventually, not while testing tho
|
|
|
|
- sudo apt-get install -y python3.4
|
|
|
|
- sudo apt-get install --upgrade -y python-pip
|
|
|
|
- sudo apt-get install jq
|
|
|
|
- sudo pip install --user virtualenv
|
|
|
|
# Create a virtual environment for AWS CLI
|
|
|
|
- virtualenv my_py3 --python=/usr/bin/python3.4
|
|
|
|
- source my_py3/bin/activate
|
|
|
|
- pip install --upgrade awscli
|
|
|
|
- pip install --upgrade awsebcli
|
|
|
|
# Set AWS information
|
|
|
|
- aws configure set aws_access_key_id $AWS_ACCESS_KEY
|
|
|
|
- aws configure set aws_secret_access_key $AWS_SECRET_KEY
|
|
|
|
- aws configure set default.region $AWS_REGION
|
|
|
|
- aws configure set metadata_service_timeout 1200
|
|
|
|
- aws configure set metadata_service_num_attempts 3
|
|
|
|
- aws configure list
|
|
|
|
# build images
|
2018-06-20 17:01:11 +00:00
|
|
|
- docker-compose stop
|
2018-06-20 18:29:13 +00:00
|
|
|
- docker-compose build --no-cache
|
|
|
|
- docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD"
|
2018-06-20 19:09:54 +00:00
|
|
|
- docker image ls
|
|
|
|
- docker tag $APP_IMAGE_NAME $DOCKER_USERNAME/$DOCKER_REPOSITORY:app_$TRAVIS_BUILD_ID
|
|
|
|
- docker tag $NGINX_IMAGE_NAME $DOCKER_USERNAME/$DOCKER_REPOSITORY:nginx_$TRAVIS_BUILD_ID
|
|
|
|
- docker push $DOCKER_USERNAME/$DOCKER_REPOSITORY:app_$TRAVIS_BUILD_ID
|
|
|
|
- docker push $DOCKER_USERNAME/$DOCKER_REPOSITORY:nginx_$TRAVIS_BUILD_ID
|
2018-06-20 18:29:13 +00:00
|
|
|
|
|
|
|
env:
|
|
|
|
global:
|
2018-06-20 20:34:09 +00:00
|
|
|
- APP_IMAGE_NAME=p5jswebeditor_app
|
|
|
|
- NGINX_IMAGE_NAME=p5jswebeditor_nginx
|