Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Drone - OSS CI Platform in a nutshell 5min

Drone - OSS CI Platform in a nutshell 5min

OSS Version of drone.io

Avatar for Kazuki Hamasaki

Kazuki Hamasaki

November 13, 2016
Tweet

More Decks by Kazuki Hamasaki

Other Decks in Programming

Transcript

  1. Drone is OSS version of drone.io • Your private Continuous

    Integration service like Travis CI, CircleCI • Integrated with your private repository GitHub Enterprise, GitLab, Bitbucket… • When push the code, drone runs build & tests. Merge Protection 5FTU3FTVMUT
  2. Why not Jenkins? • Jenkins needs a “Meister” • Jenkins

    slave is getting dirty for adding compilers and libraries, sharing the env with other test. If isolate, build VM for each you need it. • Drone creates clean env with docker container on each tests. • Jenkins created complex build pipeline • Drone’s configurations are written on yaml
  3. .drone.yml - all your settings pipeline: build: image: golang commands:

    - go get - go build - go test deploy: image: heroku app: foo.com notify: image: slack when: status: [ success, failure ] services: database: image: postgres Data store Notification Deploy Build & Test Set your docker image
  4. Comparison with others • Any docker images can be use

    for drone • any distribution, any datastore with docker compose like syntax • Private and Unlimited Tests • Your private node provides unlimited tests without wait time. • Test container can mount host volumes and devices • Linux Support only • At the moment docker only supports Linux (and Windows) container. • Travis supports macOS, Circle CI supports android.
  5. Active Developments • v0.5 (Next Release) • docker agent (easier

    to scale) • v0.4 • Matrix Builds • Docker Compose like syntax • Privileged docker container Current Development has many breaking changes!
  6. References • drone.io: https://drone.io/ • Repository: https://github.com/drone/drone • Documentation •

    v0.4: http://readme.drone.io/usage/overview/ • v0.5: http://readme.drone.io/0.5/