Skip to content

Releases: brigadecore/brigade

Brigade 0.7.0: Gateway Improvements

01 Dec 21:12
v0.7.0
387aacc
Compare
Choose a tag to compare

We're excited to bring you Brigade 0.7.0, with features and bugfixes. We made some big changes that may impact existing users.

Join the discussion in the Kubernetes slack #brigade room!

The big feature of this release is the much-improved handling of GitHub pull_request events. For security reasons, Brigade now blocks pull requests on forked repos from triggering pull_request events. To disable this behavior, you can set the BRIGADE_BUILD_FORKED_PULL_REQUESTS environment variable on the Gateway's deployment.

Breaking Changes

We try to be careful with our breaking changes. But prior to the 1.0 release of Brigade, we also occasionally make changes that are inconvenient but (we believe) in the overall best interest of the project.

Summary of breaking changes:

  • The imagePull event was renamed image_pull to match other events.
  • The Dockerhub/ACR webhook integration has been moved to a separate gateway service.

The gateway has been split in two. The existing gateway (which will likely be renamed to "github-gateway" in the future) now only handles GitHub's push and pull_request hooks.

A new gateway, the Container Registry Gateway (cr-gateway) now handles container registry webhooks (event image_push) from Dockerhub and ACR. Because that webhook API does not have authentication, we have turned this gateway off by default. To enable it with Helm, use --set cr.enabled=true.

In the future, we will be moving toward gateway microservices instead of configuring one gateway to listen to lots of different external services.

Changes

  • docs(javascript): document the JS api for enabling docker socket 34f50ce (Matt Butcher)
  • fix(charts): add roles to services, deployments, pods c92dc82 (Matt Butcher)
  • fix(webhook): do not set ssh key in environment cd23d1d (Adam Reese)
  • fix(worker): add regexp to validate job name f2a1d19 (Matt Butcher)
  • fix(git-sidecar): add openssh back in b500bd3 (Matt Butcher)
  • fix(worker): print worker version in logs a8ac06c (Adam Reese)
  • ref(*): name vcs-sidecar consistently across components 2edd731 (Adam Reese)
  • fix(gateway): correctly set default flag 8a131e7 (Adam Reese)
  • ref(cr): set default namespace for cr-gateway fd97ad2 (Adam Reese)
  • feat(gateway): make forked pull-request builds optional 9b330c2 (Adam Reese)
  • feat(cr-gateway): break container registry gw into separate binary (#99) 6dd534d (Matt Butcher)
  • fix(brig): remove dead code a366e02 (Matt Butcher)
  • fix(api): improve performance of fetching builds fe6a95c (Matt Butcher)
  • ref(*): set flag defaults a8e0721 (Adam Reese)
  • fix: delete the dead link in the Github status payload ba4dfd7 (meyerbaptiste)

Fixes to Docker, RBAC, GitHub, brig, and git-sidecar

27 Nov 22:50
v0.6.0
e1ef004
Compare
Choose a tag to compare

This release includes an array of bug fixes and feature additions.

  • Docker socket can now be mounted if the project allows
  • RBAC has been fixed
  • GitHub hooks no longer mark the build successful by default
  • brig now correctly waits for a build to start
  • Clone depth is limited to 50
  • and more

Changelog

  • Limit the clone depth at 50 to speed up builds bb98a1f (Kévin Dunglas)
  • feat(worker): add ability to configure the image pull policy of a job 98737b2 (meyerbaptiste)
  • fix(brig): wait for pod to start 22bfd67 (Matt Butcher)
  • docs(design): explain why we use secrets instead of CRDs bee54fa (Matt Butcher)
  • feat(worker): allow disabling privileged mode at project level 43265eb (Matt Butcher)
  • fix(worker): fix PVC RBAC resource aeace3b (Sean Knox)
  • feat(api): list projects with latest builds 07a9c28 (Matt Butcher)
  • set github status to pending after creating build secret 148758e (Matthew Fisher)
  • Use alpine edge to get git@2.15.0 9ff41ed (abluchet)
  • allow host mounted docker sockets c46a3a4 (Matthew Fisher)
  • mount host docker socket when enabled 5c1502a (Matthew Fisher)

Brigade v0.5.0: Numerous improvements

20 Nov 16:48
v0.5.0
247e2b3
Compare
Choose a tag to compare

This release of Brigade contains a number of improvements and fixes, and we recommend that all users upgrade.

Breaking Changes

From 0.5, we now require that a Build ID (in the form of a ULID) and a Build Name (arbitrary, but unique, string) be set on the Event secret by the gateway. If a build ID is not supplied, the controller will no process the request.

For developers: The Makefile got a major upgrade. You may need to re-run make bootstrap. Some make targets changed, too. For example, to build the client you can now make brig.

Changelog

These reflect changes since 0.3.0, since we forgot to do 0.4.0 release notes.

  • fix(controller): set service account on worker pod 2d10908 (Matt Butcher)
  • fix(tests)): accept environment vars for selftest.sh 5eb8f5b (Adam Reese)
  • ref(*): remove unused field Worker.Commit 783fe48 (Adam Reese)
  • fix(brigade.js): bump go v1.9 dc9619f (Adam Reese)
  • fix(worker): stop after from firing when no hook was executed. 086bbb3 (Matt Butcher)
  • docs(*): switch recommendation to helm repo 83de2b7 (Matt Butcher)
  • docs(scripting): update brig command name a88a930 (Adam Reese)
  • fix(worker): wrong default image name. (#144) 3601c17 (Matt Butcher)
  • fix(chart): fix if-checks and add if wrappers to all optional values aae15b1 (lukepatrick)
  • ref(Makefile): add build tag to integration tests c765fc8 (Adam Reese)
  • fix(brigade-worker): fix type error when no sidecar is set 100e0b6 (Adam Reese)
  • fix reference to brigade-server-brigade-gw cc8b742 (Matthew Fisher)
  • git mv chart/ charts/ c94f82f (Matthew Fisher)
  • fix(git-sidecar): fetch remote SHA before checkout 10597f0 (Adam Reese)
  • fix(api): show secret names, but not values (#128) db6d0f4 (Matt Butcher)
  • fix(chart): add guard for vcs-sidecar 9622899 (Adam Reese)
  • Update demo paths in docs (#134) 71f0ace (Luke)
  • Update documents with Client-only build instructions 974d49c (lukepatrick)
  • fix(Makefile): fix ldflags version 563d1e1 (Adam Reese)
  • fix(api,controller,worker): use ULID for ID (#122) 9f69ad2 (Matt Butcher)
  • Update rbac instructions f61ad2b (Jesse Keating)
  • fix(*): remove hard-coded image versions 6ba0d6e (Adam Reese)
  • chore(*): Brigade release v0.4.0 3259978 (Adam Reese)
  • Update documentation for runEach 2708ac1 (Marius Nordrik)
  • Make runEach return JobResult of all Jobs 13a060d (Marius Nordrik)
  • fix(makefile): add CGO_ENABLED=0 for build-docker-bin 078eca0 (u2takey)
  • fix(api): prevent exposing secrets on api 194ea13 (Adam Reese)
  • fix brigade.js for dep 058a284 (u2takey)
  • docs(README): fix examples in README 5d565ba (Matt Butcher)
  • Update location of brigade-project helm chart 3efd737 (Jesse Keating)
  • ref(chart): move brigade-project to chart dir d49957b (Matt Butcher)
  • projects typo fix d6260d9 (Jesse Keating)
  • Add missing highlights to object names ea4201f (Jesse Keating)
  • Typo fix 019ab25 (Jesse Keating)
  • ref(*): delete dead code, source cleanup e1ef97c (Adam Reese)
  • ref(chart): make chart smart about versions 1afa3d1 (Matt Butcher)
  • fix(brig): remove default value for -f 44e7ec2 (Matt Butcher)
  • docs(brig): update Brig help text 498ce51 (Matt Butcher)
  • fix(brig): read the file c1a0c5e (Matt Butcher)
  • move worker related setting to values d034b0b (u2takey)
  • change node:8 -> node:8-alpine 2625b71 (u2takey)

Brigade v0.3.0

03 Nov 00:16
v0.3.0
5d3793c
Compare
Choose a tag to compare

This release fixes several small bugs, and now works on Kubernetes 1.8

Kubernetes 1.8 dropped support for the initContainer annotation, which we were using to support older Kubernetes versions. This release switches to spec.initContainer for the init container definition.

Breaking Changes

  • This build no longer works with Kube 1.6 and prior
  • We switched from glide to dep for package management, so building from source has a new requirement.

Errata

  • You should continue to build Brig from master, not from this tag.

Changelog

  • fix(worker): fix error in unit test 765d832 (Matt Butcher)
  • chore(charts): update charts to 0.3.0 a99afc1 (Matt Butcher)
  • feat(*): switch to dep for go dependency management e820d37 (Adam Reese)
  • fix(tests): bump empty-testbed sha 856730b (Adam Reese)
  • fix(worker): use new schema for defining init containers f4c7f29 (Adam Reese)
  • fix(controller): fix typo in image name 825274f (Adam Reese)
  • chore(*): bump client-go to latest stable b969db7 (Adam Reese)

Brigade v0.2.0

02 Nov 14:32
v0.2.0
41455dc
Compare
Choose a tag to compare

This is the second Brigade pre-release, and contains major changes.

Possibly breaking changes:

  • Jobs no longer automatically enable storage. To mount the storage volume use j.storage.enabled = true
  • The API server is no longer publicly available by default. Instead, it is issued a ClusterIP
  • It is no longer required that a Gateway send a brigade.js file. If no brigade file is sent, one is loaded from the project's VCS.

Moving Forward

Active development on Brigade will continue. The next planned release is pre-release 0.3.0.

Changelog

  • chore(charts): update charts to 0.3.0 4934cf7 (Matt Butcher)
  • docs(topics): add projects.md document 59e84ea (Matt Butcher)
  • fix(chart): set API svc default type to ClusterIP ad9260a (Matt Butcher)
  • Update tutorial01.md cd0d954 (Aleksandar Nikolić)
  • Update install.md 12abf8d (Aleksandar Nikolić)
  • Update overview.md 4089040 (Aleksandar Nikolić)
  • Update index.md ef723a5 (Aleksandar Nikolić)
  • fix(version): add doc block 53a3265 (Matt Butcher)
  • docs(topics): updated design 5b6c5e9 (Matt Butcher)
  • fix(brig): increase timeout for log streaming b1db612 (Matt Butcher)
  • feat(controller,worker): acid.js not required eac2abd (Matt Butcher)
  • docs(index): add related resources 6a631fd (Matt Butcher)
  • fix(version): use latest tag rather than current tag 6f3df81 (Adam Reese)
  • add support for all client-go auth providers in brig command a203878 (Jesse Nelson)
  • docs(topics): add storage document 2acf8c3 (Matt Butcher)
  • update brig cli build docs and dev guide 0db25cd (James Bayer)
  • fix(worker): disable shared storage by default 435d983 (Matt Butcher)
  • Set theme jekyll-theme-cayman e9367ac (Matt Butcher)
  • add pod rule for controler role 1b9e1aa (u2takey)
  • Fix link to secrets 1b834a5 (aranair)
  • Fix broken link bf63372 (Daniel Fenton)
  • fix typos afd2c3d (Matthew Fisher)
  • ref(docs): update docs b1fb651 (Michelle Noorali)
  • ref(docs): updating docs 203b3a9 (Michelle Noorali)
  • Fixing JS syntax error in README.md 36e7914 (Hemanth Malla)
  • glide up e397f07 (Matthew Fisher)
  • remove brigade.technosophos.me reference 48a9239 (Matthew Fisher)
  • chore(*): update import paths to Azure c387456 (Adam Reese)
  • chore(charts): package latest charts 6aef918 (Adam Reese)
  • rename LICENSE.txt to LICENSE 6b119fb (Matthew Fisher)
  • add contribution documentation to README b31c998 (Matthew Fisher)
  • docs(README): update some verbage 889025c (Matt Butcher)