Foreman - from git init to official plugin

Foreman - from git init to official plugin

Talk at Cfgmgmtcamp 2015 - http://lanyrd.com/2015/cfgmgmtcamp/sdhfmw/

Fe4dc5ea02ac73b9981bcc549a7a288c?s=128

Daniel Lobato García

February 03, 2015
Tweet

Transcript

  1. Foreman from git init to official plugin

  2. @eLobatoss Software for Devops Foreman core Puppeteer

  3. None
  4. None
  5. Why write a plugin?

  6. • Extra capabilities

  7. • Extra capabilities • Quarterly release independence

  8. • Extra capabilities • Quarterly release independence • Change core

    behavior
  9. Core: Plugin:

  10. Core: improve volumes support Plugin:

  11. Core: improve volumes support Plugin: Docker compute resource

  12. Core: make multi-host power operations faster Plugin:

  13. Core: make multi-host power operations faster Plugin: Nagios integration

  14. Puppet should be (…)

  15. Puppet should be a plugin

  16. None
  17. candy should Ansible support be part of core ?

  18. recap Details? Plugin Abstraction? Core

  19. plugins decomposed

  20. Rails engines

  21. git repositories

  22. packaged:

  23. packaged:

  24. rails plugin new foo

  25. rails plugin new foo (= for smart-proxy)

  26. None
  27. None
  28. None
  29. None
  30. None
  31. None
  32. None
  33. None
  34. None
  35. candy Foreman plugins are Rails ______

  36. candy Foreman plugins are Rails engines

  37. $ cat bundler.d/Gemfile.local.rb gem 'foreman_plugin', :path => "../foreman_plugin/" Testing

  38. $ rake test:plugin_name Testing

  39. official plugins

  40. official plugins you

  41. official plugins • submit PR to foreman-packaging

  42. official plugins • submit PR to foreman-packaging • package dependencies

  43. official plugins • submit PR to foreman-packaging • package dependencies

    • add rake task to Jenkins (free CI!)
  44. official plugins we

  45. official plugins • plugin hosted in official repos

  46. official plugins • plugin hosted in official repos • pull

    requests run in Jenkins CI
  47. official plugins • plugin hosted in official repos • pull

    requests run in Jenkins CI • project official issue tracker
  48. candy 1 advantage of making your plugin official is...

  49. recap What is a plugin How to create a plugin

    Make your plugin official
  50. course material list of plugins – bit.ly/1x0u0J0 plugin engine docs

    – bit.ly/1BQvecx foreman template – bit.ly/1zztpnP proxy template – bit.ly/16bGlnE
  51. Get involved theforeman.org

  52. Get involved github/theforeman

  53. Get involved foreman-users foreman-dev

  54. Get involved foreman-users foreman-dev

  55. @eLobatoss Merci beaucoup! 谢谢 ! Thank you! 有難う御座います ! Gracias!

    D kujeme vám! ě ! הבר הדות Dankeschön! Dank u!