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
160
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
110
20 tips to secure your Rails application
elobato
0
96
20 actionable tips to secure your Rails application - Rails Israel '15
elobato
3
300
Foreman in the last year - Puppet NYC at Spotify
elobato
0
100
Provision and manage Docker containers with Foreman
elobato
0
550
Contributing to Foreman: where and how
elobato
0
70
Provision and manage Docker containers with Foreman
elobato
3
3.8k
Computing Infrastructure in Ruby
elobato
0
79
Other Decks in Programming
See All in Programming
3 Effective Rules for Success with Signals in Angular
manfredsteyer
PRO
0
120
Architectures with Lightweight Stores: New Rules and Options
manfredsteyer
PRO
0
100
Exploring the Gradually Lost Technical Skills in the Cloud Native Era
hwchiu
2
3.9k
Microservices rules (July 2024) : what good looks like
cer
PRO
0
1.6k
feature環境をGitHub ActionsとCloudFormationでいい感じに管理する
nealle
2
310
Prompt FlowによるLLMアプリケーション開発
yuto2000
1
1k
Rustのweb開発を助ける 便利なツール紹介
yuki0418
1
190
DDDを志して3年経ったら「DDDの皮を被ったクリーンアーキテクチャ」になった話【デブサミ2024夏】
texmeijin
1
620
The rollercoaster of releasing an Android, iOS, and macOS app with Kotlin Multiplatform | droidcon Berlin
prof18
0
110
AHC035解説
terryu16
0
710
開発部に不満を持っていたCSがエンジニアにジョブチェンしてわかった「勝手に諦めない」ことの大切さ
sakuraikotone
28
16k
AWS初心者ってどうやってAWSを学ぶ?〜アプリエンジニアがやってよかったアーキテクチャ学習方法〜
yamanashi_ren01
0
190
Featured
See All Featured
Design by the Numbers
sachag
277
18k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
29
2.5k
Producing Creativity
orderedlist
PRO
340
39k
Typedesign – Prime Four
hannesfritz
37
2.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
The Brand Is Dead. Long Live the Brand.
mthomps
52
36k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
34
1.9k
How to Ace a Technical Interview
jacobian
274
23k
A Tale of Four Properties
chriscoyier
155
22k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
Making Projects Easy
brettharned
111
5.7k
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!