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
670
Merpay SRE Teamが目指すもの
foostan
0
63
キーボードは好きですか? / Do you like keyboards?
foostan
21
19k
AWSのマネージドサービスを活かした Kubernetes 運用とAmazon EKS によるクラスタのシングルテナント戦略について
foostan
3
2.1k
kube-aws から EKS に移行した話
foostan
5
1.5k
freeeのクラウドサービス活用術とパフォーマンス改善活動のご紹介
foostan
0
11k
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
foostan
0
220
Consulにコントリビュートした話
foostan
4
1.3k
Other Decks in Programming
See All in Programming
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
380
List とは何か? / PHPerKaigi 2025
meihei3
0
590
snacks.nvim内のセットアップ不要なプラグインを紹介 / introduce_snacks_nvim
uhooi
0
370
S3静的ホスティング+Next.js静的エクスポート で格安webアプリ構築
iharuoru
0
210
いまさら聞けない生成AI入門: 「生成AIを高速キャッチアップ」
soh9834
14
4.1k
Denoでフロントエンド開発 2025年春版 / Frontend Development with Deno (Spring 2025)
petamoriken
1
1.3k
DomainException と Result 型で作る型安全なエラーハンドリング
karszawa
0
840
Go1.24で testing.B.Loopが爆誕
kuro_kurorrr
0
170
リアクティブシステムの変遷から理解するalien-signals / Learning alien-signals from the evolution of reactive systems
yamanoku
2
1.2k
php-fpm がリクエスト処理する仕組みを追う / Tracing-How-php-fpm-Handles-Requests
shin1x1
5
890
Modern Angular:Renovation for Your Applications @angularDays 2025 Munich
manfredsteyer
PRO
0
160
remix + cloudflare workers (DO) docker上でいい感じに開発する
yoshidatomoaki
0
120
Featured
See All Featured
Building Adaptive Systems
keathley
41
2.5k
Docker and Python
trallard
44
3.3k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
GraphQLの誤解/rethinking-graphql
sonatard
70
10k
Optimising Largest Contentful Paint
csswizardry
35
3.2k
Being A Developer After 40
akosma
90
590k
The World Runs on Bad Software
bkeepers
PRO
67
11k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
51
2.4k
We Have a Design System, Now What?
morganepeng
51
7.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
490
A better future with KSS
kneath
239
17k
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プラグインを呼び出すなど、サービス固有の命令はできない • ぐらい…?
おためしあれ