Adding partial builds to Travis#266
Merged
arcuru merged 8 commits intoexercism:masterfrom Apr 20, 2019
Merged
Conversation
6 tasks
Contributor
Author
|
So this now has examples for all the different paths: Building everything in a branch (from my fork): https://travis-ci.org/patricksjackson/xcpp/builds/519523367 |
HenryRLee
reviewed
Apr 20, 2019
Closed
Contributor
Author
|
I'm going ahead and merging this, at it will save us compilation time and help with #272. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This switches the Travis builds so that it tests different subsets of the exercises depending on whether it is a PR build or a branch build, and on the changes made compared to the master branch. Basically, for a normal PR this will help lighten the load while it's being worked on, and we will run a full build against master once it is merged.
Some other tracks do this already, I've borrowed from the script used for Rust but heavily modified it.
If it's a branch build we run everything, as we currently do.
If it's a PR build that changes no exercises, we run nothing.
If it's a PR build that changes 1 or more exercises, we only run the changed exercises.
If it's a PR build that changes the root CMakeLists.txt file, we run everything to make sure that works. [1]
I'll be kicking off builds on Travis to test all the paths before this is ready to be merged.
[1] - This also changes the CMakeLists.txt file so it reads the directories instead of taking in a list of exercises, so it doesn't need to be edited just to add an exercise. It'll only be changed if there are real changes to it.