-
Notifications
You must be signed in to change notification settings - Fork 68
Closed
Description
We have shipped iteration 2 for the Build Stages feature.
Along with a lot of bug fixes and small improvements this includes:
- Build Stages section: Define the order of stages, optionally with a condition
- Conditional builds, stages, jobs: Define conditions for accepting/rejecting a given build, stage, or job
Find out more about this on our blog, and documentation here and here.
We would love to hear your feedback. Please leave all thoughts, comments, ideas related to this feature here.
Happy Testing!
FAQ
What feature requests have you received for improving Build Stages so far?
We are adding this list of feature requests (with a rough indication of how likely we are going to prioritize it) so you don't have to ask about these again :)
- Pausing a build after a given stage, and proceeding only after an interactive confirmation. (Yes)
- Add a native build artifacts feature that can be used for sharing artifacts across stages, or another way to more easily share storage or artifacts. (Yes)
- Making the native cache feature more configurable by specifying cache keys per job. This would allow you to reuse caches in more flexible ways in subsequent stages. (Probably yes)
- Allow
scriptetc. on the newstagessection, so they can be shared across all jobs in one stage. (Yes, but not before[1]) - Allow specifying
allow_failure: trueper job onjobs.include. (Probably yes, but not before[1].) - Allow a
stagekey on thedeploysection. Turn this into a stage and a job. (Not quite sure, not before[1].) - Add a name/description to jobs, in order to reveal the intend, show them in the UI. (Not quite sure.)
- Consider
skip: all, so one does not have to overwritebefore_install,install, andscript. (Sounds like a good idea? Not before[1]) - Silence skipped commands: no log output. (Not quite sure.)
- Consider "embedded matrix expansion", e.g.
jobs.include.env: [FOO=foo, BAR=bar]. (Not quite sure) - Build config
.travis.ymleditor/web tool. (Yes, based on the specification produced in[1]) - Allow grouping jobs into arbitrary groups, not depending on each other, like stages, just for visual presentation on the UI. (Probably not)
- Update the GitHub commit status per stage, add with more detailed commit status information. (Unsure, definitely not before
[2]) - Consider automatically restarting jobs in later stages that have been canceled because a job on a previous stage failed when this job is restarted. (So far uncertain. There's a lot of complexity involved.)
- In the
runningtab, consider grouping jobs per build (and possibly stage). (Interesting thought. We are working on improving this UI, and might consider this in a later iteration.)
Other improvements:
[1]A strict travis-yml parser has been shipped.[2]The GitHub commit status API has the known limitation that new updates are being rejected after the 1000th update. They are working on improving this, and providing a way for us to post more updates. Until this is unblocked we are unlikely to make any changes to our commit status updates.
max3903, trevor-vaughan, orange-buffalo, elgalu, headupinclouds and 104 moreelgalu, Narretz, headupinclouds, TomasVotruba, eneko and 27 moreshepmaster, keradus, jboast, ScottFreeCode, sushantdhiman and 65 more