A deploy orchestrator, deploying commits in the correct order.
Kraken is a deploy orchestrator that runs as a GitHub actions. It does not have any state itself and relies entirely on the git history and GitHub deployments to determine what to deploy next.
Kraken is used as a GitHub action. Here is an example workflow:
name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
steps:
- uses: kolonialno/kraken-deploy@main
with:
environments: |
[
{
"name": "prod",
"conditions": [
{"type": "deploy", "environment": "staging"}
]
},
{
"name": "staging",
"conditions": [
{"type": "check-run", "name": "pytest"}
]
}
]