Open strogonoff opened 5 years ago
@strogonoff could you help implement the first option first?
And in the deployment job of the OP site we can set Travis to debounce builds too.
@ronaldtse Doing a pilot of this on Metanorma site.
When available, could you please do the following:
travis login && travis token
(For now to trigger the build we’re using a third-party script downloaded from GitHub each build, as suggested by some of the links posted by Ronald. If the pilot is successful we might/should switch to hosting the triggering code under our control to avoid unexpected surprises.)
@ronaldtse Feel free to ignore this, apparently I have Travis dashboard access for metanorma.com!
Yay! Sorry I completely missed this issue... 😭
Current status:
Currently in OP framework, each project site during its build pulls the information about each descendant software package from that package’s GitHub repo (things like last commit timestamp, documentation, soon probably latest release & other things).
This keeps things more or less DRY, and maintainers don’t need to make commits to project sites each time any of its descendant software packages gets updated.
However, it is still preferable to build project sites when software gets updated so that sites show up-to-date commit timestamps, docs & all. While we do have the CI set up, without a commit in project site repo the site won’t get built.
I see two options:
Automatic way: As we use Travis CI now, it can be pretty straightforward to set up GitHub webhooks on software packages repos so that they ping Travis API for their respective project sites builds whenever a new commit lands for any given software. This way we’ll remove one of the few remaining cases where human participation is needed in Open Project site lifecycle.
Semi-automatic way: Let site maintainers trigger site builds via Travis dashboard (I don’t think I can do this currently).
Those options are not mutually exclusive, ideally both would be good. Also, in either case we might want to debounce build triggers to ensure they don’t queue up, unless Travis does that natively.