Big changes for v0.10
This is a major release of Brigade, with many new features and a few compatibility breaking changes. Notably, we changed the API for sending commit information from a gateway. We advise all users to upgrade, but also to be careful as they do so.
Big changes and fixes:
- Improved configurability of VCS sidecars, worker images, RBAC, storage (PVCs), vacuum, and liveness/readiness probes
- Multiple improvements on the Git sidecar, including subtree support and fixes for cloning issues
- Support for adding custom Node libraries to a worker (experimental)
- Default per-project Brigade scripts
- GitHub enhancements
- Support for AuthorAssociation (safer PR testing)
- Support for GitHub Enterprise
As always, we welcome you to join the conversation in the Kubernetes Slack #brigade
room.
Breaking Changes
brigade-gateway
has been renamedbrigade-github-gateway
to better reflect what it does- A few RBAC changes have been made to better follow our security policies
- Completely refactor the VCS Sidecar functionality. This may break existing gateways!
- Gateways must now send references and SHAs as separate fields, instead of allowing one commitish that is then resolved
- The VCS checkout process for gitSidecar is much better now, but might result in nuanced differences if you were previously doing shallow clones.
Upcoming
We are continuing to focus on configurability and flexibility of Brigade. We are also refactoring some of the naming to standardize on ULID instead of using timestamps or other formulas to generate unique tokens.
Changelog
- feat(gatway): add support for Author Association (#226) b0327db (Matt Butcher)
- docs(README): add build status image (#324) 4066aec (Matt Butcher)
- Only create ServiceAccount\RBAC for optional components when enabled b0e5ac0 (Tim Jones)
- chore(Makefile): remove unused dependencies from bootstrap e0e0bf5 (Adam Reese)
- Only create service for cr gateway when enabled 80ac8ba (Tim Jones)
- charts/brigade: add job limits for vacuum 318178d (Paweł Prażak)
- charts/brigade: fix RBAC for use with admin cluster role 33adfec (Paweł Prażak)
- WIP feat(brigade.js): send github notification on build (#321) 1257f32 (Matt Butcher)
- feat(brig): build binaries at release 705d7ad (Matt Butcher)
- feat(*): use git references rather than commit SHA 484cc1a (Adam Reese)
- fix(github): support using GitHub Enterprise cf8b2de (Matt Butcher)
- fix(chart): make worker service account configurable d4f09db (Matt Butcher)
- fix(chart): fix broken for loop in brigade-project chart. 254a00e (Matt Butcher)
- fix(chart) bug from #292 this undid the values yaml of PR #276 Ref #268 .... 950ad3a (lukepatrick)
- Fix small typo 27d368a (Radu Matei)
- fix(worker): die on non-existent job image 8079294 (Matt Butcher)
- docs(install,developer): update installation info 8a998a2 (Matt Butcher)
- fix(controller, worker): remove extra tsc e269fe0 (Matt Butcher)
- fix(worker): fix broken unit test a7dab7a (Matt Butcher)
- fix(chart): turn vcsSidecar on by default 3ce525c (Matt Butcher)
- chore(gateway): add tests for default script support dea1ad2 (Yusuke KUOKA)
- fix(tests): revert list watcher changes 6dd7df1 (Adam Reese)
- feat(gateway): add support for default brigade script 13b9e5d (Yusuke KUOKA)
- feat(*): use typed secrets for projects, builds, and jobs 64185f1 (Adam Reese)
- Destroy Build Storage PVC on error cef43b3 (Brandon Bethke)
- Do not set the storage class to "default" by default. Do not set the kube storage class if it is not specified d5e6529 (Brandon Bethke)
- fix(worker): Do allow requiring arbitrary node modules from brigade.js 0600057 (Yusuke KUOKA)
- feat(worker): Allow using a specific brigade-worker image per project c94e6ac (Yusuke KUOKA)
- docs(examples) add minio project example 9c5ecde (lukepatrick)
- added ingress for api service 55dea73 (Alex Egorov)
- Fix typo in one of brigade chart templates 9f962e4 (Yusuke KUOKA)
- fix(chart): add rbac for vacuum c412aff (Matt Butcher)
- fix(*): fix style issues fbd54be (Matt Butcher)
- ref(chart): remove curly braces 4a53b0a (Matt Butcher)
- feat(worker): make storage class for cache and build configurable 1fc9da5 (Matt Butcher)
- Added user configurable option to initilize submodules in the default git-sidecar when cloning the repository 941c30f (Brandon Bethke)
- The build shared storage space can now be user configurable in the brigade project values file bf1065e (Brandon Bethke)
- Fixed compatibility to Python 3 d1ead0c (Tomer Rosenthal)
- feat(chart): Configurable liveness/readiness probes for api 3895928 (Yusuke KUOKA)
- chore(gateway): Rename brigade-gateway to brigade-github-gateway 8c37d94 (Yusuke KUOKA)