Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Foreman - from git init to official plugin
Search
Daniel Lobato García
February 03, 2015
Programming
0
210
Foreman - from git init to official plugin
Talk at Cfgmgmtcamp 2015 -
http://lanyrd.com/2015/cfgmgmtcamp/sdhfmw/
Daniel Lobato García
February 03, 2015
Tweet
Share
More Decks by Daniel Lobato García
See All by Daniel Lobato García
Computational Photography portfolio
elobato
1
3.3k
Intro to Foreman 2017 (cfgmgmtcamp Gent)
elobato
0
140
20 tips to secure your Rails application
elobato
0
110
20 actionable tips to secure your Rails application - Rails Israel '15
elobato
3
360
Foreman in the last year - Puppet NYC at Spotify
elobato
0
140
Provision and manage Docker containers with Foreman
elobato
0
670
Contributing to Foreman: where and how
elobato
0
84
Provision and manage Docker containers with Foreman
elobato
3
3.9k
Computing Infrastructure in Ruby
elobato
0
86
Other Decks in Programming
See All in Programming
Navigating Dependency Injection with Metro
zacsweers
3
240
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
270
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
720
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
570
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
140
testingを眺める
matumoto
1
140
旅行プランAIエージェント開発の裏側
ippo012
2
890
Android端末で実現するオンデバイスLLM 2025
masayukisuda
1
130
ファインディ株式会社におけるMCP活用とサービス開発
starfish719
0
290
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
110
1から理解するWeb Push
dora1998
7
1.8k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
GraphQLとの向き合い方2022年版
quramy
49
14k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
4 Signs Your Business is Dying
shpigford
184
22k
Writing Fast Ruby
sferik
628
62k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Gamification - CAS2011
davidbonilla
81
5.4k
Balancing Empowerment & Direction
lara
3
620
Code Reviewing Like a Champion
maltzj
525
40k
Fireside Chat
paigeccino
39
3.6k
Music & Morning Musume
bryan
46
6.8k
Transcript
Foreman from git init to official plugin
@eLobatoss Software for Devops Foreman core Puppeteer
None
None
Why write a plugin?
• Extra capabilities
• Extra capabilities • Quarterly release independence
• Extra capabilities • Quarterly release independence • Change core
behavior
Core: Plugin:
Core: improve volumes support Plugin:
Core: improve volumes support Plugin: Docker compute resource
Core: make multi-host power operations faster Plugin:
Core: make multi-host power operations faster Plugin: Nagios integration
Puppet should be (…)
Puppet should be a plugin
None
candy should Ansible support be part of core ?
recap Details? Plugin Abstraction? Core
plugins decomposed
Rails engines
git repositories
packaged:
packaged:
rails plugin new foo
rails plugin new foo (= for smart-proxy)
None
None
None
None
None
None
None
None
None
candy Foreman plugins are Rails ______
candy Foreman plugins are Rails engines
$ cat bundler.d/Gemfile.local.rb gem 'foreman_plugin', :path => "../foreman_plugin/" Testing
$ rake test:plugin_name Testing
official plugins
official plugins you
official plugins • submit PR to foreman-packaging
official plugins • submit PR to foreman-packaging • package dependencies
official plugins • submit PR to foreman-packaging • package dependencies
• add rake task to Jenkins (free CI!)
official plugins we
official plugins • plugin hosted in official repos
official plugins • plugin hosted in official repos • pull
requests run in Jenkins CI
official plugins • plugin hosted in official repos • pull
requests run in Jenkins CI • project official issue tracker
candy 1 advantage of making your plugin official is...
recap What is a plugin How to create a plugin
Make your plugin official
course material list of plugins – bit.ly/1x0u0J0 plugin engine docs
– bit.ly/1BQvecx foreman template – bit.ly/1zztpnP proxy template – bit.ly/16bGlnE
Get involved theforeman.org
Get involved github/theforeman
Get involved foreman-users foreman-dev
Get involved foreman-users foreman-dev
@eLobatoss Merci beaucoup! 谢谢 ! Thank you! 有難う御座います ! Gracias!
D kujeme vám! ě ! הבר הדות Dankeschön! Dank u!