Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Azure DevOpsを活用したマルチチーム開発: ソース管理とセキュアプラクティス

yuriemori
October 14, 2023

Azure DevOpsを活用したマルチチーム開発: ソース管理とセキュアプラクティス

2023/10/07に開催されたTFSUGのAzure DevOpsオンライン Vol.9 ~ エンタープライズ向けGit運用でお話させて頂いたときの資料です。

当日お話しした内容はこんな感じです。

1. forking flowを構築して複数の開発チームでソースコードを運用していく
- forking flowの構築
2. チーム開発をしていく上でのセキュリティを担保したブランチ保護戦略について
- 上流、下流のReposを守るためのブランチ戦略
- 上流と下流の同期
3. PRトリガーの自動化でゆるくチームを縛って予想外の変更からソースコードを守る
4. セキュリティを担保したpipelineの構築&運用プラクティス

yuriemori

October 14, 2023
Tweet

More Decks by yuriemori

Other Decks in Technology

Transcript

  1. • Agile Specialist@Avanade Jappan • DevOps&Agile Coaching • C#, Azure,

    .Net, Power Platform • Azure DevOpsを使ったスクラムの実践やチーム開発環境の構築・運用をテーマに登壇した りしてます 森 友梨映(Yurie Mori)
  2. このパートのアジェンダ 1. forking flowを構築して複数の開発チームでソースコードを運用していく - forking flowの構築 2. チーム開発をしていく上でのセキュリティを担保したブランチ保護戦略について -

    上流、下流のReposを守るためのブランチ戦略 - 上流と下流の同期 3. PRトリガーの自動化でゆるくチームを縛って予想外の変更からソースコードを守る 4. セキュリティを担保したpipelineの構築&運用プラクティス
  3. Forking workflowをざっくり考えてみる 上流 下流 Step1:Forkの作成 Alphaの最新のソースがBravoで見れるように、Bravo にAlphaのReposをforkする これで下流から変な変更がきても PRをRejectすれば変な変 更から上流のmainブランチを守れる

    Alphaの最新のソースが見れるよう にしたい の要件はこれでクリア! Step2: 上流が更新されたら PowerAutomateで通知 Step3: 上流と下流のソースの同期 通知が来たらBravoでAlphaの最新の変更を取得す る。
  4. Q&A

  5. • Application Architect@Avanade Jappan • TypeScript, Python, Go, Dart, C#,

    Azure, GCP • なんでもやる事を心掛けて、エンジニアリングをしてます。 Azure DevOpsは初心者 山本 学(Gaku Yamamoto)
  6. 問題とモチベーション 問題: ・pipeline内で作成されたDocker ImageをPushする先のAzure Container Registryに PEとNSGによって特定のIPからしか接続できない状態になった。 ・Azure DevOps Servicesエージェントは実行毎に異なるIPアドレスを持つので、都度IP

    制限によりDocker ImageのPushができない。 Azure pipeline Azure Container Registry モチベーション: ・Self Hosted agentを使用して、安定したIPアドレスを保持してpipelineを実行したい。
  7. Q&A