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

Drone as CI and deployment for python projects

Drone as CI and deployment for python projects

Slides from the talks on Kyiv.py#12

Volodymyr Hotsyk

June 07, 2014
Tweet

More Decks by Volodymyr Hotsyk

Other Decks in Technology

Transcript

  1. Drone.io • Drone is a Continuous Integration platform built on

    Docker, written in Go • https://github.com/drone/drone
  2. Why Drone • Easy to install • Open source •

    Run builds locally inside Docker containers • GitHub, Bitbucket, GitLab integration • No Java needed • No Java needed
  3. Docker • Docker is an open-source engine that automates the

    deployment of any application as a lightweight, portable, self-sufficient container that will run virtually anywhere. • www.docker.io
  4. Installation $ wget http://downloads.drone.io/latest/drone.deb! $ sudo dpkg -i drone.deb! $

    sudo start drone ! external dependency: Docker (0.8+) https://github.com/drone/drone#setup
  5. Config file image: python2.7! env:! - GOPATH=/var/cache/drone! script:! - make

    bootstrap! - make test! services:! - redis! - postgres! - dockerfile/nginx! deploy:! bash:! script:! - make deploy! notify:! email:! recipients:! - [email protected]
  6. • Builtin services: cassandra, couchdb, elasticsearch, neo4j, mongodb, mysql, postgres,

    rabbitmq, redis, riak, zookeeper • Custom services: any docker container services: - dockerfile/rethinkdb # same as dockerfile/rethinkdb:latest - barnybug/elasticsearch:1.0.1 • Builtin deployment options: Amazon S3, OpenStack Swift, Cloud Foundry, Git, Bash, Heroku, Modulus, Nodejitsu, Tsuru Other options