For some projects, a complete integration workflow includes automated delivery right after a successful build, and drone can do this.
Drone provides automated deployment system which may be configured from within .drone.yml file, and you just have to specify deploy option with any plugins available. One thing to note, since most of the deployment plugins use ssh, you may want to make sure that the target systems has already authorize drone's public key. You can see your repository public key at Key Pairs tab within repository settings page.
Listed below is the available plugins and their options:
This will deploy current repository to target when drone received commits at live branch. You can set force to true to let drone commits artifacts generated by build-script and force git to push it.
deploy:
git:
target: "git://[email protected]/repo/location"
force: false
branch: live
deploy:
heroku:
app: lightningfoobar
force: false
branch: live
Above is an example of a deployment to heroku PaaS with an app named lightningfoobar, and will be triggered only when drone get commits at live branch.
deploy:
modulus:
project: lightningfoobar
token: false
branch: live
deploy:
ssh:
target: lightningfoobar
artifacts:
- GITARCHIVE
branch: live
cmd: /srv/scripts/deploy.sh