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.6k
1
Share
Digdag で CI ジョブを定義する
foostan
October 18, 2016
More Decks by foostan
See All by foostan
SRE視点で振り返るメルカリのアーキテクチャ変遷と普遍的な考え
foostan
2
9.9k
Crafting the Endgame Keyboard
foostan
1
790
Merpay SRE Teamが目指すもの
foostan
0
140
キーボードは好きですか? / Do you like keyboards?
foostan
21
20k
AWSのマネージドサービスを活かした Kubernetes 運用とAmazon EKS によるクラスタのシングルテナント戦略について
foostan
3
2.2k
kube-aws から EKS に移行した話
foostan
5
1.6k
freeeのクラウドサービス活用術とパフォーマンス改善活動のご紹介
foostan
0
14k
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
foostan
0
270
Consulにコントリビュートした話
foostan
4
1.4k
Other Decks in Programming
See All in Programming
CLIであることを活かしたGitHub Copilot CLI活用術 / GitHub Copilot CLI Pro Tips & Tricks
nao_mk2
1
1.2k
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.3k
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
330
AI時代のUIはどこへ行く?その2!
yusukebe
19
6.4k
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
3
1.5k
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
190
inferと仲良くなる10分間
ryokatsuse
1
350
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
120
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
220
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
530
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
120
GitHub Copilot CLIのいいところ
htkym
2
1.2k
Featured
See All Featured
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
150
My Coaching Mixtape
mlcsv
0
140
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Site-Speed That Sticks
csswizardry
13
1.2k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
The SEO Collaboration Effect
kristinabergwall1
1
470
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
380
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
320
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
320
The Curious Case for Waylosing
cassininazir
1
370
Documentation Writing (for coders)
carmenintech
77
5.4k
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プラグインを呼び出すなど、サービス固有の命令はできない • ぐらい…?
おためしあれ