docs/development/setup-ci.md
Dapr uses GitHub Actions for continuous integration in order to automate the build and publish processes. As long as you have GitHub Account, you can set up your own private Actions in your fork of the Dapr repo. This document helps you set up the continuous integration for Dapr.
Fork the dapr/dapr repo to your GitHub Account
Go to Settings in the forked repo and click Secrets
DOCKER_REGISTRY : Your private Docker registry name or dockerhub id e.g. docker.io/[your_dockerhub_id]DOCKER_REGISTRY_ID : Your private Docker registry idDOCKER_REGISTRY_PASS : Your private Docker registry password or Docker Hub password/tokenDAPR_BOT_TOKEN : Your GitHub Personal Access Token; you do not need this unless you want to publish binaries to your forked GitHub release.Actions tabClick I understand my workflows, go ahead and run them
Dapr CI has give different behaviors based on the situations:
| Build binaries | Store binaries into artifact | Publish docker image | GitHub Release | |
|---|---|---|---|---|
| Create PR against master branch | X | X | ||
| Push the commit to master branch | X | X | dapr:edge image | |
| Push vX.Y.Z-rc.R tag e.g. v0.0.1-rc.0 | X | X | dapr:vX.Y.Z-rc.R image | X |
| Push vX.Y.Z tag e.g. v0.0.1 | X | X | dapr:vX.Y.Z and dapr:vX.Y.Z:latest image | X |
| Cron schedule ("nightly") | X | X | dapr:nightly-YYYY-MM-DD image |