= Action usage

=== Build action

On each push/pull_request on master and dev branch, *build* is trigger

=== Which workflow for which result ?

|===
|Workflow name|description|Start by
|Build| Build project on each PR or commit on master/dev| ⚙
|Release| Create github release and could optionally push release to public repository or call `Publish binaries` workflow| 🤚
|Publish binaries|Push binaries on repository (maven central) and as asset on github release| ⚙ or 🤚
|Crowdin download| Download from crowdin all translation on dev branch and open a PR|⚙ each night
|Crowdin upload| Upload on crowdin all translation for dev |⚙ each night
|Commit Message check| Check commit message when a PR is open|⚙
|Generate Dependencies report| Generate zip with dependencies report|🤚
|Pull Request Labeler| Add label on PR to improve release note|⚙
|Merge branches| Merge one branch into another|🤚
|===

=== How to do a complete release ?

To do a release, run *Release* action. You need to enter all parameters (You can keep default value)

|===
|parameter|default value |mandatory|commentary
|version|--next-patch|✅|Keep default value to bump minor version or replace with specific version
|publishBinaries|true|✅|If true, binaries will be pushed on the repository, added as a github release asset.
|pushToPublic|true|✅|If true, tag will be pushed on github public repository
|createPR|true|✅|If true, we will open a PR on repositories which depends on ui-designer (studio and web-pages)
|===

=== How to add/update the release note ?

Go on https://github.com/bonitasoft/bonita-ui-designer-internal/releases/tag/YOUR_TAG_NAME and edit the release note:
* Select the latest tag before the releases actually with `Previous tag field`
* Click on `Generate release notes` button
* On the bottom of the page, click on `Update release`


