Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Service Configuration Management for Rapid Growth - demo 10 steps to build pipeline -

1,469 views

Published on

Configuration Management Workshop held at Echelon Ignite Thailand 2013

see also
- https://github.com/nulab/echelon-2013-scm-webapp
- https://github.com/nulab/echelon-2013-scm-server
- https://github.com/nulab/echelon-2013-scm-selenium

  • Be the first to comment

  • Be the first to like this

Service Configuration Management for Rapid Growth - demo 10 steps to build pipeline -

  1. 1. Service Configuration Management For Rapid Growth – Demo - Friday, September 6 2013 Echelon Ignite 2013 Thailand
  2. 2. 10 STEPS to build “Pipeline”
  3. 3. Echelon Ignite 2013 Thailand Prerequisites  Runtime Environment  Python 2.7  Ruby 1.9  Java 1.6 or later  Tool  Vagrant 1.2  Jenkins
  4. 4. VCS CI Service source code Server Configuration Server Orchestration app servers Test Test configure deploy Git Jenkins serverspe c ansible fabric selenium Test
  5. 5. Echelon Ignite 2013 Thailand #1 build and run app $ git clone https://github.com/nulab/echelon-2013-scm- webapp.git $ cd echelon-2013-scm-webapp $ pip install –r packages.txt $ sqlite3 todo.db < etc/schema.sql $ ./app.py –r -d app
  6. 6. Echelon Ignite 2013 Thailand open http://localhost:5000/todo
  7. 7. Echelon Ignite 2013 Thailand #2 run tests $ py.test tests -vl app
  8. 8. Echelon Ignite 2013 Thailand #3 add “Unit Test” job open http://localhost:8080/view/All/newJob https://github.com/nulab/echelon- 2013-scm-webapp.git
  9. 9. Echelon Ignite 2013 Thailand #3 add “Unit Test” job py.test --junitxml=pytest.xml tests
  10. 10. VCS CI source code Test Git Jenkins
  11. 11. Echelon Ignite 2013 Thailand #4 build and test server $ git clone https://github.com/nulab/echelon-2013-scm- server.git $ cd echelon-2013-scm-server $ vagrant up $ vagrant ssh-config > ssh.config $ vagrant ssh $ rake spec server
  12. 12. Echelon Ignite 2013 Thailand #5 add “Server Test” job https://github.com/nulab/echelon- 2013-scm-server.git
  13. 13. Echelon Ignite 2013 Thailand #5 add “Server Test” job #!/bin/sh vagrant up rake -t ci:setup:rspec spec
  14. 14. Echelon Ignite 2013 Thailand #6 deploy app $ pip bundle -r packages.txt todo.pybundle app $ fab stop –H default $ fab deploy:localdir=“../echelon-2013-scm-webapp/” –H default $ fab start –H default server
  15. 15. Echelon Ignite 2013 Thailand #7 integration test $ git clone https://github.com/nulab/echelon-2013-scm- selenium.git $ cd echelon-2013-scm-selenium $ export SELENIUM_TARGET_HOST="http://192.168.33.10” $ py.test tests -vl selenium
  16. 16. CI Service Server Configuration Server Orchestration app servers Test configure deploy Jenkins ansible fabric selenium Test
  17. 17. Echelon Ignite 2013 Thailand open http://192.168.33.10/todo
  18. 18. Combine!!
  19. 19. Echelon Ignite 2013 Thailand #8 add “Assemble Archive” job open http://localhost:8080/view/All/newJob
  20. 20. Echelon Ignite 2013 Thailand #8 add “Assemble Archive” job
  21. 21. Echelon Ignite 2013 Thailand #9 add “Deploy” job
  22. 22. Echelon Ignite 2013 Thailand #10 add “Integration Test” job https://github.com/nulab/echelon- 2013-scm-selenium.git
  23. 23. Echelon Ignite 2013 Thailand #10 add “Integration Test” job export SELENIUM_TARGET_HOST="http://192.168.3 3.10" py.test --junitxml=pytest.xml tests
  24. 24. Echelon Ignite 2013 Thailand Build Pipeline
  25. 25. VCS CI Service source code Server Configuration Server Orchestration app servers Test Test configure deploy Git Jenkins serverspe c ansible fabric selenium Test
  26. 26. Thanks!! If you have any questions, Feel free to ask @nulabinc

×