Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Digdag で CI ジョブを定義する
foostan
October 18, 2016
Programming
1
900
Digdag で CI ジョブを定義する
foostan
October 18, 2016
Tweet
Share
More Decks by foostan
See All by foostan
Merpay SRE Teamが目指すもの
foostan
0
9
キーボードは好きですか? / Do you like keyboards?
foostan
21
16k
AWSのマネージドサービスを活かした Kubernetes 運用とAmazon EKS によるクラスタのシングルテナント戦略について
foostan
2
1.6k
kube-aws から EKS に移行した話
foostan
5
1.3k
freeeのクラウドサービス活用術とパフォーマンス改善活動のご紹介
foostan
0
9.8k
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
foostan
0
78
Consulにコントリビュートした話
foostan
4
980
Other Decks in Programming
See All in Programming
あなたの会社の古いシステム、なんとかしませんか?~システム刷新から考えるDX化への道筋とバリエーション~/webinar20220420-grapecity
grapecity_dev
0
140
코드 품질 1% 올리기
pluu
1
1k
Learning DDD輪読会#4 / Learning DDD Book Club #4
suzushin54
1
160
mrubyを1300円のボードで動かそう
yuuu
0
190
Reactでアプリケーションを構築する多様化
sakito
4
3.5k
Better Reliability through Observability (and Experimentation)
ksatirli
PRO
1
380
Monadic Java
mariofusco
4
270
ソフトウェアテストなんて他人事! だと思っていた私が始めた小さな取り組み
izumii19
0
450
How useEvent would change our applications
koba04
1
1.8k
CIでAndroidUIテストの様子を録画してみた
mkeeda
0
190
roadmap to rust 2024
matsu7874
1
910
マイクロサービスプラットフォーム向け負荷試験基盤の初期リリースを終えた話
yuyu_hf
PRO
1
490
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
506
37k
The Brand Is Dead. Long Live the Brand.
mthomps
45
2.7k
Making the Leap to Tech Lead
cromwellryan
113
6.9k
Web development in the modern age
philhawksworth
197
9.3k
Gamification - CAS2011
davidbonilla
75
3.9k
How New CSS Is Changing Everything About Graphic Design on the Web
jensimmons
212
11k
Rails Girls Zürich Keynote
gr2m
86
12k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
37
3.2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
268
11k
The Most Common Mistakes in Cover Letters
jrick
PRO
4
24k
jQuery: Nuts, Bolts and Bling
dougneiner
56
6.4k
Navigating Team Friction
lara
175
11k
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プラグインを呼び出すなど、サービス固有の命令はできない • ぐらい…?
おためしあれ