Please come back later :)
Serenity workflows aim to provide easy to use, understand and modify reusable github actions workflows for common ci/cd use cases.
- Workflows DO NOT use marketplace actions or any dependencies except for github default actions.
- Workflows are given as local files for ease-of-modification and adaptation to your needs.
- Hiding the SSH key log output with add-mask breaks the _deploy-application.scalingo.reusable workflow.
- 🪧 About
- 📦 Prerequisites
- 🚀 Installation
- 🛠️ Utilisation
- 🤝 Contribution
- 📚 Documentation
- 📝 Licence
Workflow files contents are however branch dependent (so you can edit a workflow file and try it on a feature branch).
-
Copy the workflows files in your
.github/worflows
project folder. -
Commit / Push / Merge to your default (main / master) branch.
-
Setup a deployer (Clevercloud / Scalingo ...)
-
Fill the necessary env variables in a use case and run it.
There are several types of workflow files :
The setup files (*.setup.yml) are aimed to configure a deployer for the project.
They are run manually through the github action interface.
The reusable workflows (.reusable.yml) are single responsibility building blocs that provide a service. They are usually called by use-case workflows with inputs and may return several outputs
- Cache dependencies using Yarn lockfile (nodes modules)
- Build application bundle
- Enumerate branches that follow a 'feature/*' name pattern
- Validation (run 'lint' and 'test' package.json scripts)
- Create/Deploy a node application
- Create/Deploy a static application
- Destroy a deployed application
- Create/Deploy a node application
- Create a feature application with a copy of the database of a reference application
- Discord
- Mattermost
Use-case workflows (*.use-case.yml) are used to provide complex scenarios.
They can be called by events (eg on branch push or merge) or event manually
-
Deploy an application on feature branch push (dep | build & validation | deploy | notify)
-
On feature branch deletion / merge delete the associated deployed application.
-
Start / Stop the demo instances according to team schedule (uncomment the 'schedule' to activate)
- Have a clevercloud account
- Clevercloud reusable workflows (files with the pattern _*.clevercloud.reusable.yml) must be in your default branch .github/workflows folder.
Set up the
- CLEVER_TOKEN
- CLEVER_SECRET
- (Organisation) CLEVER_ORG_ID
repository variables.
Step-by-step setup Postgresql addon workflow
Contributions are welcome ! Just submit a pull request with the files following the naming convention.
I cannot set my workflow env variables as reusable a workflow input
Voir le fichier LICENSE du dépôt.