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
Prowを試してみた/Try Prow
Search
bells17
December 24, 2019
Technology
0
670
Prowを試してみた/Try Prow
Prowを試してみてわかったことなどを会社の部活のLTで話しました
まじで軽く試してみてわかったこと/これから調べる必要がありそうなことをまとめただけなので、まじで触りだけの内容です
bells17
December 24, 2019
Tweet
Share
More Decks by bells17
See All by bells17
コードを読んで理解するko build
bells17
1
83
Kubernetes History Inspector(KHI)を触ってみた
bells17
0
230
スリーシェイクにおけるOSSの取り組み
bells17
4
340
コミュニティ紹介: Kubernetes Meetup Novice
bells17
1
140
社内活動の取り組み紹介 ~ スリーシェイクでこんな取り組みしてます ~
bells17
1
550
モダンインフラの基礎を学ぼう!実践コンテナ入門
bells17
2
290
Kubernetes Code Contribution入門
bells17
5
1.1k
Dev ContainersとTestcontainers
bells17
3
570
アーキテクチャから学ぶKubernetesの全体像
bells17
21
14k
Other Decks in Technology
See All in Technology
Active Directory攻防
cryptopeg
PRO
7
4.4k
偏光画像処理ライブラリを作った話
elerac
1
120
Swiftの “private” を テストする / Testing Swift "private"
yutailang0119
0
140
Iceberg Meetup Japan #1 : Iceberg and Databricks
databricksjapan
0
160
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
830
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
310
AI エージェント開発を支える MaaS としての Azure AI Foundry
ryohtaka
6
630
OpenID BizDay#17 KYC WG活動報告(法人) / 20250219-BizDay17-KYC-legalidentity
oidfj
0
350
データマネジメントのトレードオフに立ち向かう
ikkimiyazaki
6
1.2k
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
130
LINEギフトにおけるバックエンド開発
lycorptech_jp
PRO
0
110
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
150
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
How to Ace a Technical Interview
jacobian
276
23k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Unsuck your backbone
ammeep
669
57k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
A Modern Web Designer's Workflow
chriscoyier
693
190k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
BBQ
matthewcrist
87
9.5k
For a Future-Friendly Web
brad_frost
176
9.5k
Transcript
Prowを試してみた わかったところまで共有します @bells17
Prowとは?
Prow • Kubernetesを開発していくいために作られたCI/CDツール(元々はJenkinsを利用) • Githubの各種イベントをハンドリングして動作する • In-tree plugin + external
pluginによるプラグイン形式を採用 • Kubernetes関連リポジトリはだいたいProwでCI/CDが行われている • Prow自体はKubernetes, Knative, Jenkinsなどのプラットホームで動作するよう • より詳細な情報は https://github.com/kubernetes/test-infra/tree/master/prow を参照
None
Kubernetesリポジトリでの利用例
None
None
Prowを導入する上で考える必要があること
• Prowの実行環境の用意(Kubernetes, etc...) • Prow実行環境のセキュリティ設定(e.g. Prowサーバーへのアクセス制御) • Github Botアカウントの作成 •
Botアカウントの権限設定 • Prow準拠のリポジトリ運用ルールの作成 ◦ ラベルベースによる運用を行う ◦ approveなどをProwのコマンドを使用する ◦ mergeなどはすべてBotで行う ◦ etc… • In-treeプラグインで不足する部分についてはプラグインを自作する Prow導入に向けて
Prow環境の構築(できたとこまで)
• GKEクラスタを構築 • Botアカウントを用意 • Botアカウントのpersonal access tokenを生成 • Prowテスト運用用のリポジトリを用意
• Prow用のWebhookを設定 • 手元にbazelとtackleを用意 ◦ tackleは記載の方法では用意できなかったので git clone git@github.com:kubernetes/test-infra.git && cd test-infra/prow && make buildで生成 • tackleコマンドを実行 • Prowのプラグイン設定を行うplugins.yamlをProwにデプロイ Prow環境構築
None
とりあえずそれっぽく動く とこまではできた
• PR変更サイズに応じたサイズラベルを自動付与 • /assignによる担当者アサイン • /lgtmによるlgtmラベルの付与 できたこと • /approveによるmerge •
/ok-to-testによるCIテストの実行 • sig/docsなどの種類区分ラベルの付与 まだできてないこと
• 前ページのできてないことの検証 • triggerプラグイン実行用のサーバーの用意 • External pluginの実装&利用方法の調査 • Prowの設計思想の理解 •
Prowを利用したCI/CDパイプラインの設計 • organizationレベルでのProwに必要な権限周りの設計 Prow検証のための残タスク
Thank you!
• https://github.com/kubernetes/test-infra/tree/243bc1562d8d66094881a6d53225acb26d051 65e/prow • https://github.com/kubernetes/test-infra/blob/243bc1562d8d66094881a6d53225acb26d05 165e/prow/getting_started_deploy.md • https://github.com/kubernetes/test-infra/blob/243bc1562d8d66094881a6d53225acb26d05 165e/prow/plugins/README.md •
https://github.com/gkuga/prow-handson • https://blog.soushi.me/entry/2019/01/08/123752/ 参考