Your SlideShare is downloading. ×
0
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Drone your Ansible
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Drone your Ansible

1,469

Published on

Testing Ansible code with Drone.

Testing Ansible code with Drone.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,469
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
8
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Drone your Ansible Dennis Rowe @shr3kst3r wpengine.com
  • 2. Drone •https://github.com/drone/drone •“Drone is a Continuous Integration platform built on Docker, written in Go” •Buzzword score: 4
  • 3. Show Time •Deploy Droid •Hook it up to Github •Test some Ansible code •Poke around the Drone UI
  • 4. Update Kernel •apt-get update •apt-get install linux-image- generic-lts-raring linux-headers- generic-lts-raring •reboot
  • 5. Install Docker • apt-key adv --keyserver hkp:// keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D 21E9 • sh -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/ docker.list" • apt-get update • apt-get install lxc-docker
  • 6. Install Drone •wget http://downloads.drone.io/ latest/drone.deb •dpkg -i drone.deb •start drone
  • 7. http://IP/install
  • 8. Register Drone with Github
  • 9. Important Numbers
  • 10. Add to Drone
  • 11. New Repository
  • 12. Authorize
  • 13. Add Repository
  • 14. Notes •First run can take a looooong time because it needs to download the Docker image.
  • 15. Completed Run
  • 16. Poking at Docker
  • 17. Now the Configuration
  • 18. Pull •GitHub •BitBucket
  • 19. Deployment •Cloud Foundry •Engine Yard •Git Push •Bash •Heroku •Modulus •Nodejitsu •Tsuru
  • 20. Publish •S3 •Swift •PyPI •NPM •Docker
  • 21. Services •cassandra •couchdb •elasticsearch •neo4j •mongodb •mysql •postgres •rabbitmq •redis •riak •zookeeper
  • 22. Notifications •E-Mail •Webhook •Hipchat
  • 23. Other Stuff •Can launch custom Docker containers •Can persist directories between builds •Parameter injection in to the .drone.yml
  • 24. .drone.yml image: python2.7 env: script: - sudo apt-get update - sudo apt-get install software-properties-common - sudo apt-add-repository ppa:ansible/ansible - sudo apt-get update - sudo apt-get install ansible - sudo pip install https://github.com/willthames/ansible-lint/archive/master.zip - sudo apt-get install rubygems - sudo gem install serverspec - sudo gem install rake - sudo ./drone_it notify: email: recipients: - dennis@wpengine.com
  • 25. drone_it •Lints the Ansible code •Deploys the Ansible code •Runs server-spec to verify •https://github.com/shr3kst3r/ ansible-drone-example/blob/ master/drone_it
  • 26. Thoughts •Would like to be able to test multiple docker images (https:// github.com/drone/drone/issues/6). •Hard to create complex setups. •Can’t edit /etc/hosts because it is a bind mount.
  • 27. Odds and Ends •https://github.com/shr3kst3r/ ansible-drone-example •You can reach me at dennis@wpengine.com or @shr3kst3r on the twitters

×