The repository of GitHub CI/CD workflows used @[okp4].
This is a collection of GitHub Actions that we use for our projects @OKP4 and that can be useful to others.
All the workflows and actions defined in this repository promotes the practices of CI (i.e. Continuous Integration) and CD (Continuous Deployment|Delivery) and enable the automation of operations that cover the following categories:
- Code quality
- Code review
- Dependency management
- Build
- Deployment
- Testing
- Publishing
- Utilities
The actions are organized around several workflows, described hereafter.
Part of the code quality analysis, ensure the homogeneity of the codebase.
The workflow contains a large set of jobs to deal with different project typologies (technology, programming language...).
Executes the tests present in the codebase.
The workflow contains a large set of jobs to deal with different project typologies (technology, programming language...).
Build the different artifacts produced from the codebase.
The workflow contains a large set of jobs to deal with different project typologies (technology, programming language...).
Publish artifacts based on a branch codebase, by commenting the pull request with /publish
message.
The workflow contains a large set of jobs to deal with different project typologies (technology, programming language...).
Publish the different artifacts produced from the codebase.
The workflow contains a large set of jobs to deal with different project typologies (technology, programming language...).
Automatically merges a Pull request satisfying conditions (i.e. dependabot
PR targeting minor or patch updates).
Give thanks to the used dependencies by starring the corresponding GitHub repositories.
workflows/follow-contributor.yml
Make sure our bot follows anyone opening a PR.
This action can be used to spread the word when a new release is available. We use it to send a message to our discord server.
Export draw.io diagrams to usable png files.
workflows/k8s-cluster-graphs.yml
Create Kubernetes cluster graphs representing its state using the kubectl
graph plugin.
The workflows contain reusable GitHub actions jobs that can be used as a base recipe for your own workflows. Just pick the ones you're interested in and add them to your .github/workflows/xxxx.yml
workflow file in your repository.
Most jobs need a specific access token with appropriate permissions to run correctly. This token is named OKP4_TOKEN
, and is defined at the level of the organization. If needed, read the documentation on creating a PA token.
Please check out OKP4 health files :