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
環境構築を自動化したい@wakayama.rb#32 / automatival enviro...
Search
KamataRyo
April 10, 2016
Programming
0
190
環境構築を自動化したい@wakayama.rb#32 / automatival environment building @wakayama.rb#32
wakayama.rb#32で話題提供やデモンストレーションを行った、Ansible、Serverspec、Travis CIについてのスライドです。
KamataRyo
April 10, 2016
Tweet
Share
More Decks by KamataRyo
See All by KamataRyo
TileCloud の開発を支える技術
kamataryo
2
400
NPX-shell-hacking
kamataryo
0
51
frontend-shikoku#1
kamataryo
1
710
Introducing of Map Warper
kamataryo
0
1.4k
wp-rest-api-and-amazon-polly
kamataryo
0
980
how-to-deploy-from-travis-ci
kamataryo
1
810
IoT with React
kamataryo
1
280
wacker#17-wreact
kamataryo
0
140
wakayamarb#37
kamataryo
1
97
Other Decks in Programming
See All in Programming
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
0
400
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
380
OSS開発者という働き方
andpad
5
1.7k
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
270
MCPで実現するAIエージェント駆動のNext.jsアプリデバッグ手法
nyatinte
7
1.1k
テストコードはもう書かない:JetBrains AI Assistantに委ねる非同期処理のテスト自動設計・生成
makun
0
240
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
220
基礎から学ぶ大画面対応(Learning Large-Screen Support from the Ground Up)
tomoya0x00
0
410
プロポーザル駆動学習 / Proposal-Driven Learning
mackey0225
2
1.2k
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
830
アルテニア コンサル/ITエンジニア向け 採用ピッチ資料
altenir
0
100
Ruby Parser progress report 2025
yui_knk
1
420
Featured
See All Featured
A Tale of Four Properties
chriscoyier
160
23k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
GraphQLとの向き合い方2022年版
quramy
49
14k
Why Our Code Smells
bkeepers
PRO
339
57k
Writing Fast Ruby
sferik
628
62k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
GitHub's CSS Performance
jonrohan
1032
460k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
Rails Girls Zürich Keynote
gr2m
95
14k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Six Lessons from altMBA
skipperchong
28
4k
Transcript
ڥߏஙΛࣗಈԽ͍ͨ͠ Ansible, Serverspec & TravisCI — Infrastructure as Code !3VCZษڧձ!Վࢁ
πʔϧɺαʔϏεհ w "OTJCMFIUUQXXXBOTJCMFDPN w 4FSWFSTQFDIUUQTFSWFSTQFDPSH w 5SBWJT$*IUUQTUSBWJTDJPSH ͜ΕΒΛͬͯΓ͍ͨ͜ͱʢ࣮ݧதʣ τϐοΫε
αʔόߏஙͷखॱͷநԽ w खॱॻʁ ղͳυΩϡϝϯτ͕ࢁੵΈʹ w ϓϩϏδϣχϯά༻ͷγΣϧεΫϦϓτʁ ॊೈੑɺεέʔϥϏϦςΟͳͲͰ͋Γʁ
"OTJCMF w αʔόͷߏཧπʔϧ w ΤʔδΣϯτϨεͰಈ࡞ ʢϗετͰ1ZUIPO͕ಈ͚0,ʣ w ͦͷଞͷߏཧπʔϧ$IFGɺ1VQQFU w αʔόͷߏΛίʔυͱͯ͠هड़ʢ:".-ܗࣜʣ
"OTJCMFQMBZCPPLͷྫ # playbook.yml # CentOSͷྫ --- - name: playbookͷྫ hosts:
wakayamarb.org:22 remote_user: kamata become: yes tasks: - name: add a user user: name=user password=pass - name: install apache yum: name=hatted - name: enable apache service: name=httpd state=started enabled=yes
"OTJCMFͷσϞϯετϨʔγϣϯ VagrantͰ࡞ͨ͠ԾϚγϯʹରͯ͠ద༻ͯ͠Έ·͢
4FSWFSTQFD w αʔόͷߏͷςεςΟϯάϑϨʔϜϫʔΫ w 3VCZɺ34QFD͕ϕʔε
4QFDϑΝΠϧͷྫ # server_spec.rb # kamataϢʔβ͕ଘࡏ͢Δ describe user('kamata') do it {
should exist } end # ඞཁͳaptύοέʔδ͕Πϯετʔϧ͞Ε͍ͯΔ apt_packages = %w{ ufw apache2 postgresql-server } apt_packages.each do |pkg| describe package(pkg) do it { should be_installed.by('apt') } end end
4FSWFSTQFDͷσϞϯετϨʔγϣϯ wakayamarbαʔόʹରͯ͠ద༻ͯ͠Έ·͢
w $*ʢܧଓతΠϯςάϨʔγϣϯʣࢧԉαʔϏε w (JUIVCͳͲʹϗετ͞ΕͨΦʔϓϯιʔεϓϩδΣΫτ ͳΒɺແྉͰ༻ग़དྷΔ 5SBWJT$*
QVTI DMPOF UFTU ϏϧυɾςετࣗಈԽπʔϧ
5SBWJT$*ͷσϞϯετϨʔγϣϯ ςετͰ࡞ͨ͠nodeύοέʔδʹద༻ͯ͠Έ·͢
Γ͍ͨ͜ͱ ࣮ݧத ʔςετɾσϓϩΠͷࣗಈԽ
ܧଓతͳϦϑΝΫλɾςετɾϏϧυ QVTI DMPOF 4FSWFSTQFD "OTJCMF XBLBZBNBSCαʔό ϦϑΝΫλ ʔαʔόߏ$*ʹ
w 5SBWJT͔ΒXBLBZBNBSCͷΞΫηε w ଟஈ44) ϙʔτϑΥϫʔσΟϯάʁ w Ή͠Ζϗετ͕(JUIVC͔ΒQVMMͯ͘͠Δ͖ʁ w 伴ཧͷϙϦγʔʁ