Create dynamic pipelines on github actions
Welcome to pippy, thank you visiting this project. Pippy allows you to create configurable pipelines on Github Actions(a.k.a workflows). Examples,
CI(Tests)
->Build docker image
->Deploy docker image (Staging)
->Approval
->Deploy docker image(Production)
Terraform plan
->Approval
->Terraform apply
Deploy Staging
->E2E Tests(Datadog monitored)
->Approval
->Deploy Production
- Automatic rollback on workflow or datadog failures.
- Halt pipeline on workflow failures.
- Datadog Monitoring upto pre configured time (default: 15mins after workflow execution completes).
- Stage approval.
- Lock pipelines to avoid any approvals.
- Audits for critical actions.
- Ability to create pipelines dynamically without learning YAML
brew install nixmade/tap/pippy
- Perform github login (all data is stored locally)
pippy user login
- Workflows used as part of pipeline needs to be pippy ready. Use spacebar to select repo
pippy workflow validate
-
After corresponding changes are made to workflows and merged to repo, verify by running above validations
-
Create a new pipeline by following steps
pippy pipeline create --name my-first-pipeline
- Execute your first pipeline run by providing pipeline inputs
pippy pipeline run execute --name my-first-pipeline -input version=e3d0bea
- List recent pipeline runs
pippy pipeline run list --name my-first-pipeline
Cloud/Hosted version is coming soon, please signup here at pippy, this has some additional features
- Github triggers
- Collaboration for teams
If you do not require any features mentioned above, you can easily chain your workflows in github reusing workflows, be aware of the limitations.
All data is stored locally in HOMEDIR/.pippy