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
Digdag で CI ジョブを定義する
Search
foostan
October 18, 2016
Programming
1
1.4k
Digdag で CI ジョブを定義する
foostan
October 18, 2016
Tweet
Share
More Decks by foostan
See All by foostan
Crafting the Endgame Keyboard
foostan
1
640
Merpay SRE Teamが目指すもの
foostan
0
53
キーボードは好きですか? / Do you like keyboards?
foostan
21
19k
AWSのマネージドサービスを活かした Kubernetes 運用とAmazon EKS によるクラスタのシングルテナント戦略について
foostan
3
2k
kube-aws から EKS に移行した話
foostan
5
1.5k
freeeのクラウドサービス活用術とパフォーマンス改善活動のご紹介
foostan
0
11k
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
foostan
0
210
Consulにコントリビュートした話
foostan
4
1.3k
Other Decks in Programming
See All in Programming
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
140
ErdMap: Thinking about a map for Rails applications
makicamel
1
650
テストコード書いてみませんか?
onopon
2
340
HTML/CSS超絶浅い説明
yuki0329
0
190
watsonx.ai Dojo #6 継続的なAIアプリ開発と展開
oniak3ibm
PRO
0
170
為你自己學 Python
eddie
0
520
ASP.NET Core の OpenAPIサポート
h455h1
0
120
サーバーゆる勉強会 DBMS の仕組み編
kj455
1
300
AWSのLambdaで PHPを動かす選択肢
rinchoku
2
390
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
月刊 競技プログラミングをお仕事に役立てるには
terryu16
1
1.2k
QA環境で誰でも自由自在に現在時刻を操って検証できるようにした話
kalibora
1
140
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.2k
Writing Fast Ruby
sferik
628
61k
Fireside Chat
paigeccino
34
3.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Visualization
eitanlees
146
15k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
19
2.3k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
Optimising Largest Contentful Paint
csswizardry
33
3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Transcript
Digdag で CI ジョブを定義する 五反田.rb#10(テスト(rspec/minitest)について)
None
本日お話すること • Jenkins + Digdag で 脱Jenkinsおじさん • CI のジョブを
Digdag で定義するメリットとデメリット
@foostan Kosuke Adachi
スモールビジネスに携わる方が より創造的な活動にフォーカスできるように
スモールビジネスに携わる方が より創造的な活動にフォーカスできるように
Jenkins おじさん • Jenkinsは自由度が高くてジョブの編集も簡単 • でも気づいたらカオスな状態になってきて管理す る人が必要になる • ジョブを編集したいと思ったらその人に許可取っ てWeb上から直接ジョブを書き換えると…
つらい
脱 Jenkins おじさん ① ジョブを Git で管理 • Jenkinsの手軽さをあえてなくす •
GitHubでレビューしてもらう体制を整える • 問題が起きたときに原因を特定できるようにする、戻せるよう にする ↓ カオスなジョブになりにくい環境が整う
脱 Jenkins おじさん ② ジョブを Digdag で定義する • Digdag: ◦
Treasure Data のプロダクト ◦ シェルスクリプト、Phyton、Ruby でタスクを定義して、 yaml(正しくはyamlを拡張したもの)で定義したフローで実 行するもの
None
テスト準備
jsファイルの更新があれ ばフロントエンドのテスト を実行
rbファイルの更新があ ればバックエンドのテス トを実行
テスト準備
rubocop実行
rspec実行
CI のジョブを Digdag で定義するメリット • Gitで管理できる (GitHubを利用してレビューする体制が整う) • ローカルで気軽に実行できる •
SaaSとの相性も良いためサービスの選択肢が広がる ◦ a • yamlよりも表現力が高い(フローを定義できる) machine: timezone: Asia/Tokyo ruby: version: 2.3 test: override: - digdag run test.dig
CI のジョブを Digdag で定義するデメリット • Jenkinsプラグインを呼び出すなど、サービス固有の命令はできない • ぐらい…?
おためしあれ