More information also @ http://readme.drone.io.
- Chef 12+
This cookbook is tested against:
- Ubuntu 15.10
- Ubuntu 16.04
- CentOS 7.x
...but it might work on other platforms.
If installing and managing docker with this cookbook only version 1.11+ is supported.
Installs the drone server.
recipe[drone::default] in your run list.
Fronts drone server with a reverse_proxy using nginx for HTTPS.
recipe[drone::reverse_proxy] in your run list.
Installs and sets up the drone worker. For use with Drone <= 0.4
Basically installs docker and exposes the socket over TCP for the Drone server to send builds to.
recipe[drone::worker] in your run list.
Installs and sets up the drone agent. For use with Drone >= 0.5
recipe[drone::agent] in your run list.
For Drone ENV config settings see:
- http://readme.drone.io/setup/overview/#configure - Drone 0.4
- http://readme.drone.io/0.5/manage/server/ - Drone 0.5
||Docker repo to pull Drone from||String||
||Version of Drone||String||
||Host port to bind drone to||Integer||
||Volumes to mount to drone from host||Array||
||Name of vault with secrets||String||
||Hash of Drone ENV configuration options||Hash||See Configuration section below.|
||Hash of configuration options for Drone Agent||Hash||See Configuration section below.|
||Block ability to activate new repos through reverse proxy. Useful for trying to stop people from using an old Drone env.||Boolean||
The configuration in Drone 0.4.0 changed from TOML to BASH RC file.
The minimum required attribute is to set following tokens for your "remote" driver (gitlab, github, etc..)
See the drone documentations and
attributes/default.rb for more options.
drone::reverse_proxy you need:
Other optional items include:
attributes/docker.rb for more options.
Note: There is no ability to control docker version on RHEL based platforms.
- Linting - Rubocop and Foodcritic
- Spec - ChefSpec
- Integration - Test Kitchen
Testing requires ChefDK be installed using it's native gems.
gem install docker-api foodcritic -f any -X spec . rubocop rspec --color --format progress
If you run into issues testing please first remove any additional gems you may
have installed into your ChefDK environment. Extra gems can be found and removed