Plugin CI process details
Plugin repositories with name starting with ‘plugin-’ have unique CI process managed with workflow file named push_sync_ci.yaml. As the total architecture of CI is different from other repositories, plugin repositories' workflow files are automatically updated at every code commit.

We can follow the plugin CI process, step by step.
Step 1. push_sync_ci.yaml in each plugin repository is triggered by master branch push or in a manual way.
Step 2. push_sync_ci.yaml runs cloudforet-io/actions/.github/worflows/deploy.yaml.
Step 2-1. spaceone/actions/.github/worflows/deploy.yaml runs cloudforet-io/actions/src/main.py.
cloudforet-io/actions/src/main.pyupdates each plugin repository workflow files based on the repository characteristics distinguished by topics. Newest version files of all plugin repository workflows are managed incloudforet-io/actions.
Step 2-2. spaceone/actions/.github/worflows/deploy.yaml runs push_build_dev.yaml in each plugin repository
push_build_dev.yamlproceeds versioning based on current date.push_build_dev.yamlupload the plugin image in Docker.push_build_dev.yamlsends notification through Slack.
To build and release the docker image of plugin repositories, plugins use dispatch_release.yaml.
dispatch_release.yamlin each plugin repository is triggered manually.dispatch_release.yamlexecutes condition_check job to check version format and debug.dispatch_release.yamlupdates master branch version file.dispatch_release.yamlexecutes git tagging.dispatch_release.yamlbuilds and pushes to Docker Hub withdocker/build-push-action@v1dispatch_release.yamlsends notification through Slack.
For further details, you can check our GitHub cloudforet-io/actions.