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
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Digdag で CI ジョブを定義する
foostan
October 18, 2016
More Decks by foostan
See All by foostan
AI-native時代の信頼性を育てる、 インシデント学習と改善ループの実践
foostan
2
5.1k
SRE視点で振り返るメルカリのアーキテクチャ変遷と普遍的な考え
foostan
2
10k
Crafting the Endgame Keyboard
foostan
1
800
Merpay SRE Teamが目指すもの
foostan
0
150
キーボードは好きですか? / 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
Other Decks in Programming
See All in Programming
AWS Transform Customによる Spring Boot 2.xから4.xへのVerUp
satoshi256kbyte
2
110
片田舎のおっさん、 Swift Buildのダイアモンド問題解決の不具合修正PRを出すが、解決方法がキャッシュをしないようにすることであり、ビルド時間が伸びると言われてマージされないので高速化もする/swiftbuild
yimajo
0
310
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
370
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
270
Pythonの実行はどこまで賢くなったのか? CPythonとPyPyから見る最適化のしくみ
curekoshimizu
3
2.2k
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
280
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
3.8k
「人を評価する AI」の設計と実装
ryoyanara
0
260
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
520
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
250
Discordを用いたラボオートメーション関連情報収集の自動化
noguhiro2002
0
460
VibeCodingからAgenticWorkflowへ
starfish719
0
940
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
450
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
260
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
690
Evolving SEO for Evolving Search Engines
ryanjones
0
270
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
390
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
510
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
370
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
260
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プラグインを呼び出すなど、サービス固有の命令はできない • ぐらい…?
おためしあれ