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.5k
Digdag で CI ジョブを定義する
foostan
October 18, 2016
Tweet
Share
More Decks by foostan
See All by foostan
SRE視点で振り返るメルカリのアーキテクチャ変遷と普遍的な考え
foostan
2
6.7k
Crafting the Endgame Keyboard
foostan
1
730
Merpay SRE Teamが目指すもの
foostan
0
96
キーボードは好きですか? / Do you like keyboards?
foostan
21
20k
AWSのマネージドサービスを活かした Kubernetes 運用とAmazon EKS によるクラスタのシングルテナント戦略について
foostan
3
2.1k
kube-aws から EKS に移行した話
foostan
5
1.6k
freeeのクラウドサービス活用術とパフォーマンス改善活動のご紹介
foostan
0
12k
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
foostan
0
250
Consulにコントリビュートした話
foostan
4
1.3k
Other Decks in Programming
See All in Programming
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
4.3k
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
1.8k
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
150
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
120
チームをチームにするEM
hitode909
0
400
PostgreSQLで手軽にDuckDBを使う!DuckDB&pg_duckdb入門/osc25hi-duckdb
takahashiikki
0
200
大規模Cloud Native環境におけるFalcoの運用
owlinux1000
0
200
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
900
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
150
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
27k
JETLS.jl ─ A New Language Server for Julia
abap34
2
460
Implementation Patterns
denyspoltorak
0
130
Featured
See All Featured
Speed Design
sergeychernyshev
33
1.4k
Exploring anti-patterns in Rails
aemeredith
2
210
Building Applications with DynamoDB
mza
96
6.9k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Mind Mapping
helmedeiros
PRO
0
40
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
How GitHub (no longer) Works
holman
316
140k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.2k
Tell your own story through comics
letsgokoyo
0
770
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
150
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プラグインを呼び出すなど、サービス固有の命令はできない • ぐらい…?
おためしあれ