Skip to content
redsummernight edited this page Dec 2, 2020 · 9 revisions

Note: This guide is deprecated. In December 2020, we migrated our build from Travis CI to GitHub Actions (AO3-6082).

Travis CI is an open source Continuous Integration platform. When it's hooked up, every time a pull request is submitted to the otwcode/otwarchive repository on GitHub, Travis CI will grab a copy of the code changes, merge them into a master copy, and then run our test suite against that new copy of the code. It will run the tests again whenever a pull request is merged into master.

Results will be sent to the otw-coders-extra mailing list as detailed in the How it looks section. Additionally, project members with merge permissions will be able to see the build status near the merge button on each pull request.

You can also set up Travis CI to work with your copy of the otwarchive repo so you can test your changes before submitting a pull request. It is well worth it -- Travis CI runs our test suite much faster than most development environments.

Travis CI/GitHub link setup

  1. Log in to Travis CI with GitHub
    1. In your browser, navigate to http://travis-ci.org
    2. Choose 'Sign in with GitHub' in the top right-hand corner of your screen
      • If you're not signed in to GitHub, you'll need to enter your GitHub credentials
  2. Get a list of your repositories
    1. Hover over your name in the upper right corner of the page and select 'Accounts', or go straight to your Travis CI profile
    2. Choose 'Sync account' to grab a list of your repositories
  3. Use the switch next to otwarchive to turn on Travis CI

After this point, when you push a new commit, Travis CI will automatically find the .travis.yml file in your fork, and your tests will run!

How it looks

If you used the settings above, this is what should happen:

  • When a coder submits a pull request, Travis CI will automatically grab a copy of the changes and run our full test suite against it.
    • No notifications will be sent out for pull request failures.
  • When a pull request is merged into master, Travis CI grabs a copy of the new master branch and runs it against our tests.
    • If the build fails, an email will be sent to the otw-coders-extra mailing list saying that the new code does not pass testing.
    • When a build passes without a state change (the build wasn't previously failing), no email will be generated.
    • If the build goes from failing to passing, there will be an email.