CockpitCMS-Drone/README.md

78 lines
3.0 KiB
Markdown
Raw Normal View History

2019-03-05 15:28:29 +01:00
# Cockpit CMS Drone Deploys Addon
This addons is a modified version of the addon [CockpitCMS-Netlify](https://github.com/pauloamgomes/CockpitCMS-Netlify).
It provides an integration with Drone CI promote feature to trigger a pipeline run. You can use it to deploy a website based on data in Cockpit CMS and built with a static site generator.
## Installation
1. Confirm that you have Cockpit CMS (Next branch) installed and working.
2. Download and extract to 'your-cockpit-docroot/addons' (e.g. cockpitcms/addons/Drone, the addon folder name must be Drone)
3. Drone icon will apear, if configuration is completed.
## Configuration
1. Ensure that from your Drone account you have an access token and permissions to promote a build for the project and branch, you want to use.
2019-03-06 12:26:09 +01:00
2. Go to "Settings - Drone Deploys" and add a your drone configuration like below as following
2019-03-06 12:27:37 +01:00
| | |
| --- | --- |
| URL: | your drone server url, pe. https://YOUR.DRONE.SERVER |
| Token: | your drone access token |
| Owner: | the owner of the git repository |
| Project: | the git project |
| Branch: | the branch in your git repository for the deployment |
| Target: | the target condition used in your drone pipeline |
| Build: | the build number used as base for deployment, leave empty and the addon will use the latest successfull build based on a push event |
2019-03-05 15:42:05 +01:00
2019-03-05 15:28:29 +01:00
### Permissions
There are just two permissions:
- **manage.view** - provides access to the Drone deploy list
2019-03-08 10:59:56 +01:00
- **manage.extended_view** - provides access to drone logs
2019-03-05 15:28:29 +01:00
- **manage.deploy** - provides access to trigger a new deploy
2019-03-08 10:59:56 +01:00
- **manage.settings** - provides access to configure the addon
2019-03-05 15:28:29 +01:00
2019-03-05 15:42:05 +01:00
### Drone CI pipeline example
- **.drone.yml** in your git repository
```yaml
kind: pipeline
name: default
steps:
- name: deploy website
image: alpine
commands:
# your deploy commands here
- echo Hello World
when:
event: [ promote ]
2019-03-05 15:52:53 +01:00
target: [ website ]
2019-03-05 15:42:05 +01:00
```
2019-03-06 12:31:20 +01:00
- settings in your **Cockpit - Settings - Drone Deploys** for an example project *myorganization/myproject*
| | |
| --- | --- |
| URL: | https://YOUR.DRONE.SERVER |
| Token: | XXXXXXXXXXXX |
| Owner: | myorganization |
| Project: | myproject |
| Branch: | master |
| Target: | website |
| Build: | *empty* |
2019-03-05 15:42:05 +01:00
2019-03-05 15:28:29 +01:00
## Usage
Having the configuration defined accessing the Drone deploys page (/drone/deploys) a list of latest (limited to 50) deploys is displayed:
2019-03-05 15:42:56 +01:00
To trigger a new deploy just hit the Deploy button an confirm the action.
2019-03-05 15:28:29 +01:00
## Copyright and license
Copyright 2019 Sebastian Frank under the MIT license.