Opps i deployed it again
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Opps i deployed it again

  • 1,614 views
Uploaded on

Look at fabric, buildout, hostout and silvercloud

Look at fabric, buildout, hostout and silvercloud

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • For further hostout documentation see http://github.com/djay/collective.hostout/tree/master/collective/hostout/
    Are you sure you want to
    Your message goes here
  • <br /><object type="application/x-shockwave-flash" data="http://blip.tv/play/AYHrxzIC" width="350" height="288"><param name="movie" value="http://blip.tv/play/AYHrxzIC"></param><embed src="http://blip.tv/play/AYHrxzIC" width="350" height="288" type="application/x-shockwave-flash"></embed></object>
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
1,614
On Slideshare
1,613
From Embeds
1
Number of Embeds
1

Actions

Shares
Downloads
11
Comments
2
Likes
1

Embeds 1

http://www.twylah.com 1

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
  • Isolated environment Combine eggs, sdist, cmmi, .cfg, php, whatever Recipes do the combining Flow is Configure, build (auto install), run Vs Install, configure, run Can share “buildouts”

Transcript

  • 1. Oops! I deployed it again New ways to get your app in the cloud Dylan Jay
  • 2. You've written a web app And now you need a host
  • 3. We want it to be easy
  • 4. We want flexibility
  • 5. We want it to be cheap
  • 6. Options Type Providers Flexibility (Easy) Scalability Shared Few e.g. Webfaction ($14) Limited Choice (Control Panel) None AppEngine One Google (Free) No Choice (Launcher) Built in VPS Lots e.g. Slicehost ($20) Unlimited choice (DIY) DIY Cloud Few e.g. Rackspace ($11) Unlimited choice (DIY) DIY
  • 7. Can you have your cake and eat it to?
  • 8. Hostout (Fabric, buildout) & Silverlining
  • 9. Code under development
  • 10. Push vs Pull
  • 11. Fabric << fabfile.py >> from fabric import api def host_type(): api.run('uname -s') $ fab -H localhost,linuxbox host_type
  • 12. Buildout Workflow Get the “buildout” $ python bootstrap.py $ bin/buildout $ bin/myinstalledscript … add recipes to buildout.cfg from pypi … $ bin/buildout
  • 13. Building myapp $ bin/buildout $ bin/paster serve src/myapp/myapp.ini
  • 14. Useful recipes
    • zc.recipe.egg – download eggs and create scripts
    • 15. collective.recipe.command – run shell commands
    • 16. collective.recipe.template – make config files from templates
    • 17. zc.recipe.cmmi – compile, make, install stuff
    • 18. isotoma.recipe.apache – or any other useful shortcuts
    • 19. mr.developer – manage source control
  • 20. Hostout
      Is a buildout recipe to replicate a local buildout to many hosts (using fabric)
  • 21. Hostout
    • Get a “production” buildout
    • 22. To your develop.cfg buildout add...
    • 23. [myhost]
    • 24. recipe = collective.hostout
    • 25. extends = hostout.cloud hostout.ubuntu
    • 26. hosttype = rackspace
    • 27. key = myaccount
    • 28. secret = myapikey
    • 29. buildout = production.cfg
    • 30. $ bin/buildout
    • 31. $ bin/hostout myhost deploy
  • 32. Hostout is modular
    • Collective.hostout
      • Deploys buildout to any posix host. Needs IP and password
    • hostout.ubuntu
      • bootstraps ubuntu host for buildout
    • hostout.cloud
      • Creates node ready to be bootstrapped
    • fabfiles = myfabfile.py – add your own
  • 33.  
  • 34.  
  • 35. $ bin/hostout host deploy
  • 36. Silverlining
    • By Ian Bicking
    • 37. Create app layout/dir
      • $ silver init myapp
    • Install dependencies into dir
      • $ cd app; bin/easy_install repoze.bfg
    • Install your code into dir
      • $ bin/python src/myapp/setup.py develop
  • 38. Silverlining II
    • Configure it
      • Edit app.ini: runner = src/myapp/myapp.ini
    • Create host
      • $ silver create-node myhost
      • 39. $ silver setup-node myhost
    • Deploy (rsync)
      • $ silver update myapp --node myhost
  • 40. Hostout vs. Silverlining
    • Many deployers
      • Checkin. Checkout. Buildout. deploy
    • Hostout uses fabric
      • Cross platform but more dependencies (pycrypto)
    • Hostout is modular
      • Package your own fabfiles to help others deploy
    • Hostout is flexible – helps professionals
      • Buildout is powerful. No limit to building/installing. NoSQL etc.
    • Buildout shares dl code
  • 41. Silverlining vs. Hostout
    • Silverlining is batteries included
      • You don't need a production buildout
    • Silverlining is “known” target platform
      • means less variables to go wrong
    • Familiar workflow
      • Commandline vs cfg.
  • 42. Thanks
    • Dylan Jay
    • 43. http://www.pretaweb.com
    • 44. twitter: djay75
    • 45. [email_address]
    • 46. Know plone, syd admin or pywebdev? - we're hiring
  • 47. Photo Credits http://www.flickr.com/photos/benheine/4613609067/sizes/l/in/set-72157622547905358/ http://www.flickr.com/photos/stevedave/3444248057/sizes/o/ http://www.flickr.com/photos/rkbcupcakes/3409724942/sizes/o/ http://www.flickr.com/photos/irrational_cat/517564258/