Shipit: Coordinating Multi-Repo Releases
Shipit coordinates releases across multiple repos without doing it by hand.
It uses Terraform’s plan/apply model. Before anything is pushed, you see what will happen (commits, tag names, PR descriptions) then apply it.
A config file describes your projects and their pipelines. Each step is either a branch-to-branch merge (b2b) or a branch-to-tag release (b2t):
projects:
- name: api-common
pipeline:
- type: b2b
source: dev
target: main
- type: b2t
source: main
- name: api-service
pipeline:
- type: b2b
source: dev
target: main
- type: b2t
source: main
- name: frontend
pipeline:
- type: b2b
source: dev
target: main
- type: b2t
source: main
Check out the project documentation for more information.