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
Ansibleモジュール自作入門
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
satoken
October 28, 2018
1
570
Ansibleモジュール自作入門
satoken
October 28, 2018
Tweet
Share
More Decks by satoken
See All by satoken
やる夫Ansible.pdf
satoken
1
510
Featured
See All Featured
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
How STYLIGHT went responsive
nonsquared
100
6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Faster Mobile Websites
deanohume
310
31k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
52k
Amusing Abliteration
ianozsvald
0
140
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.5k
Paper Plane
katiecoart
PRO
0
48k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Transcript
hcmD([. Ansible 自作入門
Ansible ? - Introduction: - Pythonで実装されたインフラ構成管理ツール - サーバ、DB、NW、クラウド etc -
2.7.0では2900モジュールもあるそうな - Red Hat, Debian, CentOS, OS X, any of the BSDsで動作
ラズパイで動く んじゃね?
None
動いた!
最初にやるのは もちろん
Lチカ
_人人人人人人人人人人人_ > AnsibleでGPIO操作 <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄
どうやって?
ソースを読んでみる
Ansibleモジュール完全に理解した - 1モジュール、1つのファイルで構成 yumモジュール → yum.py - 実際の処理 開始: AnsibleModuleでPlaybookからパラメータを受け取る
途中: 必要な処理を行う→コマンド打ったりAPI呼んだり 終了: module.exit_json()を呼んで終了 - 開始と終了のお作法を守れば途中の処理は何してもいいのでは
数を足して返すだけ
こんな感じ
動作が理解できた ので
Lチカでけた
指定したピンと回数でLチカする gpio: setup: "OUT" pin: 18 count: 5 →GPIOモジュールを呼ぶだけ →使い道?
調子に乗って量産
小型液晶に出力
SSD1306に文字を出す SSD1306: disp_str: "ラズパイでAnsible動いた!“ →Adafruitのsampleをそのまま流用 →使い道?
BME280モジュール
BME280で温度・湿度・気圧 bme280: bus: 1 i2c_addr: 0x76 →スイッチサイエンスのsampleをそのまま流用 →使い道?
factsで値を返す
赤外線LEDで扇風機を操作
単純にON/OFFするだけ senpuuki: power_state: on →irsendコマンドをmodule.run_command()に渡してるだけ →使い道?
扇風機の状態を変えるためちゃんと changed: trueを返す
まとめ - raspberry pi に Ansible を入れることで Python、Ansibleだけでなく電子工作の知識も一通り学べる。 →Ansibleモジュールを作るために回路図を見る こういう楽しみ方もいいのではないでしょうか!
× アイディアは無限大