https://github.com/3box/pipeline-tools
https://github.com/3box/pipeline-tools
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/3box/pipeline-tools
- Owner: 3box
- Created: 2022-05-17T14:47:03.000Z (about 4 years ago)
- Default Branch: develop
- Last Pushed: 2024-11-07T18:24:18.000Z (over 1 year ago)
- Last Synced: 2024-11-07T19:20:37.749Z (over 1 year ago)
- Language: Go
- Size: 679 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Ceramic Pipeline Tools
This repository is a collection of Go code and [Dagger](https://www.dagger.io) plans for building, testing, and deploying various Ceramic network components.
## Organization
### CI
The CI portion of the code consists of Dagger plans for:
- Building code
- Running unit tests
- Building Docker images
- Validating Docker images
- Pushing Docker images to Dockerhub and ECR
- Creating CD jobs (deployments, e2e tests, smoke tests)
### CD
The CD portion of the code consists of the CD Manager (written in Go), which is responsible for:
- Reading jobs from a job queue (implemented over DynamoDB used as a time-series database)
- Deploying services or standalone tasks to one or more ECS clusters
- Running smoke tests
- Running integrations tests
- Launching anchor workers
- Coordinating between:
- Compatible jobs that can run simultaneously, e.g. smoke tests and e2e tests
- Incompatible jobs that can't run simultaneously, e.g. deployments and all other jobs