AtlasOfLivingAustralia / travis-build-configuration

travis-ci.org build configuration files shared/re-used among ALA projects
5 stars 8 forks source link
ala-product-build-management travis-ci

This repo contains all the information, configuration, and scripts required/used for building ALA projects on travis-ci.org.

See the doc/ subdir for information.
See the bin/ subdir for helper scripts and even more information.

Step-by-step guide to add travis-ci.org support to a github repo/project

Prerequirements

Adding travis-ci support

1. git clone the project/repository you want to add travis support to, and cd into the clone
2. what type of project is it? Choose the appropriate .travis.yml template and copy it into the root of your git repo/project

3. add the .travis.yml file to your git repo/project:

git add .travis.yml

4. Use the travis client to login:

travis login --github-token $GITHUB_TOKEN

5. Enable travis-ci.org support for this github repo/project

travis enable --org --no-interactive

6. OPTIONAL step, configure/customize some of the travis-ci.org settings:

travis settings builds_only_with_travis_yml --enable --no-interactive
travis settings build_pull_requests --disable --no-interactive

7. ENCRYPT and add to .travis.yml all the encrypted env vars your git project uses/requires to build/test on travis-ci.org:

travis encrypt -a -p "TRAVIS_DEPLOY_USERNAME=<<MAVEN_REPO_USER_NAME>>"
travis encrypt -a -p "TRAVIS_DEPLOY_PASSWORD=<<MAVEN_REPO_PASSWORD>>"

note: <<MAVEN_REPO_USER_NAME>> & <<MAVEN_REPO_PASSWORD>> are placeholders. Replace them with username and password of nexus repository.

8. Add your changes to git

git add .travis.yml

9. Add travis-ci build status badge to your README.md file, and add it to the git ($repo is your github repo/project name):

echo "### $repo   [![Build Status](https://travis-ci.org/AtlasOfLivingAustralia/$repo.svg?branch=master)](https://travis-ci.org/AtlasOfLivingAustralia/$repo)" > README.md

git add README.md

10. for grails application and grails plugin projects you need to add the release/publisher plugin to your grails project settings:

11. finally commit and push your changes to git/github

git commit -m "added travis-ci.org support"
git push