SlideShare a Scribd company logo
これからはじめるAzure Pipelines
かめがわ かずし(@kkamegawa)
自己紹介
personal:
name: かめがわ かずし
alias: kkamegawa
community:
MVP: Microsoft MVP for Developer Technologies(2009-)
UsersGroup: Team Foundation Server Users Group
URL: https://dev.azure.com/tfsug/tfsuginfo
Blog: はてなブログ
URL: https://kkamegawa.hatenablog.jp
This contents based on 2020/7/4
お品書き
Azure Pipelinesについて
Multi-Stage Pipelinesについて
基本的な記法
作り方
高度なお話
CI / CD サービス、ソフトウェア戦国時代
Azure Pipelines
Microsoftが提供するマネージドサービス
GitHub Actionsとインフラは共通(らしい)
YAML定義は違うのでエージェントは別実装
無料枠・オープンソース向け無料枠あり
プライベートソースでは1800分 / 月が無料
オープンソースでは10並列が無制限無料
Windows / Linux / macOSのエージェントを提供
Azure Pipelinesの機能追加は多い
ほぼ3週間に一度のス
プリントに何か機能追
加されている
今後の機能追加も多く
予定されている
https://docs.microsoft.com/en-us/azure/devops/release-
notes/features-timeline
数多い中でも最大の変更 - Multi-Stage Pipeline
https://devblogs.microsoft.com/devops/whats-new-with-azure-pipelines/
Microsoftといえば?
Getting Start for Azure Pipelines
Multi-Stage Pipelines is…
テキストのYAML
BuildとReleaseを
単一のファイルで
定義可能
一応GUIのアシス
タントもある
Multi-Stage Pipelines以前のエディター
現在は “Classic” Editor
Classic means “Obsolete”?
MSのサービスでは”Classic”
とつくと終焉の足音
早めにYAMLとMulti-Stage
Pipelinesに慣れましょう。
Azure PipelinesのYAML配置-例1
./azure-pipelines.yml
Azure ReposのGitレポジトリ
にazure-pipelines.yml(デ
フォルト)を配置
用途別に複数のYAMLをお
いてもいいよ
フォルダーの下でもOK
./sub/job_template.yml
Azure PipelinesのYAML配置 – Templateを使用
./azure-pipelines.yml
./sub/job_template.yml
YAMLファイルの一部をテ
ンプレートとして切り出し
別フォルダーに格納して
本体から参照する
./sub/step_template.yml
Azure PipelinesのYAML配置 – 外部レポジトリTemplate
./azure-pipelines.yml
./sub/job_template.yml ./sub/step_template.yml
YAMLファイルの一部をテ
ンプレートとして切り出し
外部のレポジトリでテン
プレートを集中管理する
Template
Repos
Project
Repos
Azure PipelinesのYAML配置 – 外部レポジトリで管理
./prja/azure-pipelines.yml ./prjb/azure-pipelines.yml
YAMLファイルを別レポジ
トリーで集中管理
特定の人だけがビルド定
義を編集可能になる
(通常メンバーはReader権
限にしておくなど)
Project
Repos
Pipelines
Repos
Azure Pipelinesとテンプレート
他サービスと比べて長くなりがちなAzure Pipelines
のYAMLでもテンプレートを使えば柔軟な構成が可能
テンプレートの追加・編集はあくまでも「人間が」編
集するもの
組織のコンプライアンスで必要な処理がある場合、
Pipeline decoratorを使って、必須処理を実行させる
https://docs.microsoft.com/en-us/azure/devops/extend/develop/add-pipeline-
decorator?view=azure-devops
Templateの注意事項
100ファイルまで
連結したときトータル10MB以下
参照した文字列を展開すると2000文字まで
https://docs.microsoft.com/en-us/azure/devops/pipelines/process/templates?view=azure-devops
YAMLパイプラインのつくり方
YAMLになっても基本は変わらない
Build Test Publish
Build Artifacts Deploy
Approve
Deploy
Pre-
Deploy
Test
Post-
DeployよくPipelinesが難しい&失敗しがちなのはPublish
1. $Build.SourceFolder配下で生成
2. file copyタスクで$Build.ArtifactStagingDirectoryへコピー
3. Publish folderタスクでコピー
※:Azure DevOps内にPublishしたファイルは一定期間で消えます
Multi-Stage Pipelinesの代表的な要素
YAMLの基本構造
YAMLなのでスペース重要
段落単位で2spaces字下げ
 : でキーワードを区切る
 | で複数データタイプの指定が可能
Intellisenceで入力補助がある
Webは組み込み
VS Code拡張機能
Stages:
Stage A
Jobs:
Job A1
Steps:
Task A.1.1
Task A.1.2
Jobs:
Job A2:
Steps:
Task A.2.1:
Task A.2.2:
Stage B:
…..(ship)
Pipelineの要素 - Pipeline
先頭にリソース類を定義
variablesに変数定義
triggerにビルドトリガー対象
ブランチ名
prにはpull requestトリガー
対象ブランチ名
stagesには一つ以上のJobs
かテンプレート参照
name: string
resources:
pipelines: [ pipelineResource ]
containers: [ containerResource ]
repositories: [ repositoryResource ]
variables:
trigger: trigger
pr: pr
stages: [ stage | templateReference ]
Pipelineの要素 - Stage
マルチステージ(ビルド、複
数環境へのデプロイ)を定義
する。なくてもよい。
displayNameはわかりやすい
名前を。自動では付与され
ない
dependsOnで別のstage名を
指定すると依存関係となる
stages:
displayName: string
dependsOn: string | [ string ]
condition: string
variables:
jobs: [ job | templateReference]
Pipelineの要素 - Jobs
必ず使うJobs
一つ以上のJob(実際のビル
ドタスク)を含む
ジョブ内のStepsを実行する
エージェントプールを指定
する(windows/macOS/Linux,
自前等)
jobs:
- job: string
displayName: string
dependsOn: string | [ string ]
condition: string
strategy:
parallel:
matrix:
maxParallel: number
continueOnError: boolean
pool: pool
workspace:
clean: outputs | resources | all
container: containerReference
timeoutInMinutes: number
cancelTimeoutInMinutes: number
variables:
steps: [ script | bash | pwsh | powershell |
checkout | task | templateReference ]
services: { string: string | container }
Pipelineの要素 – Deployment Job
jobs:
- deployment: string
displayName: string
pool:
name: string
demands: string | [ string ]
workspace:
clean: outputs | resources | all
dependsOn: string
condition: string
continueOnError: boolean
container: containerReference
services: { string: string | container }
timeoutInMinutes: nonEmptyString
cancelTimeoutInMinutes: nonEmptyString
variables:
environment: string
strategy:
runOnce:
deploy:
steps:
- script: [ script | bash | pwsh | powershell |
checkout | task | templateReference ]
今までのRelease機能でやっ
ていたもののYAML版
一つ前との差分は”strategy”
展開戦略を指定する
runOnce:一回のみ
rolling:順番に展開
canaly:少しずつ展開
https://docs.microsoft.com/ja-
jp/azure/devops/pipelines/process/deployment-jobs?view=azure-devops
Pipelineの要素 – Server Job
jobs:
- job: string
timeoutInMinutes: number
cancelTimeoutInMinutes: number
strategy:
maxParallel: number
matrix: { string: { string: string } }
pool: server
先ほどまでは「パイプライン
の中で」動くジョブ。これは
「パイプラインの外部サー
バー」で動くジョブ
デプロイ先でのエラー有無
Azure Functionsを呼び出す
Work Itemが解決済みか
…などを検証する
Pipelineの要素 - Steps
steps:
[ script | bash | pwsh |
powershell | checkout | task |
templateReference ]
処理を記述するSteps
ビルドのPowerShellスクリプ
ト、Gitのチェックアウト、タス
クを記述する
複数行は | で連結
Pipeline要素 - Trigger
trigger:
batch: boolean
branches:
include: [ string ]
exclude: [ string ]
tags:
include: [ string ]
exclude: [ string ]
paths:
include: [ string ]
exclude: [ string ]
パイプラインが実行される
トリガーの定義
batchをtrueにすると、複数
リクエストがあっても順番に
投入される
Reposの場合、CIかけたくな
ければコミットメッセージに
***NO_CI***をつける
https://docs.microsoft.com/en-us/azure/devops/pipelines/repos/azure-repos-
git?view=azure-devops&tabs=yaml#skipping-ci-for-individual-commits
Multi-Stage Pipelines苦労するところ
とにかく長くなりやすい
長くなったなと思ったら積極的なリファクタリング必要
クライアントでビルドできるのに…
最初はSystem.Debugをtrueにしてログを見る
self-hosted agentでビルドして、ファイル生成場所見る
Stage, Job, Stepの名前なし問題
必ずdisplayNameつけましょう(自動でつけてほしい…)
オンプレミスでもMulti-Stage Pipeline
Azure DevOps Server 2020 RC1が公開(7/1)
Multi-Stage Pipelineもサポートされました。
他たくさん新機能(だいたいSprint 170くらいまで)
https://devblogs.microsoft.com/devops/announcing-azure-devops-server-2020-rc1/
ちょっと高度な使用方法
構成管理
Azure Blueprintsと連携してデプロイするものを管理
コンプライアンス準拠
Azure Pipelinesのdecoratorを使用して、必須タスクを強制
よくある質問
すぐ全部移行しないとダメ?
GUI版はClassicになったけど、まだ大丈夫。
TFVCで使える?
非サポート
全部Classicと同じ機能そろってるの?
ないとされている機能でも代替機能で賄えるはず
Gate→Agentless Task
Task Group→Template
https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started/pipelines-get-started?view=azure-
devops#feature-availability
まとめ
MSのサービスで”Classic”という名前がついたら黄
色信号。移行計画を!
YAMLになって大変だけど、得られるものもあります
スタートには厳しいけど、エンタープライズ向けには
必要な機能も多いので頑張って!
参考資料
Multi-stage pipelines user experience
https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started/multi-stage-pipelines-
experience?view=azure-devops
Azure Pipelines公式
https://github.com/microsoft/azure-pipelines-yaml
しばやんのところ
https://blog.shibayan.jp/archive/category/DevOps
公式ブログ
https://devblogs.microsoft.com/devops/
Microsoft Learnの日本語訳 - Azure DevOps を完全理解する 目次
https://qiita.com/ymasaoka/items/c43ac02e0bc9cbdadd65

More Related Content

PDF
Azure boards for beginners
Kazushi Kamegawa
 
PDF
Azure DevOps入門~TechLab編
Kazushi Kamegawa
 
PDF
DevOps and Compliance and Security
Kazushi Kamegawa
 
PDF
Azure DevOps's security
Kazushi Kamegawa
 
PDF
Azure Boards and Azure Test Plans inside out.
Kazushi Kamegawa
 
PDF
Azure DevOps Online Vol.3 - Inside Azure Pipelines
Kazushi Kamegawa
 
PPTX
Deploy to Azure by ??? Azure Repos or GitHub
Kazushi Kamegawa
 
PPTX
What's new Azure DevOps in //Build 2019
Kazushi Kamegawa
 
Azure boards for beginners
Kazushi Kamegawa
 
Azure DevOps入門~TechLab編
Kazushi Kamegawa
 
DevOps and Compliance and Security
Kazushi Kamegawa
 
Azure DevOps's security
Kazushi Kamegawa
 
Azure Boards and Azure Test Plans inside out.
Kazushi Kamegawa
 
Azure DevOps Online Vol.3 - Inside Azure Pipelines
Kazushi Kamegawa
 
Deploy to Azure by ??? Azure Repos or GitHub
Kazushi Kamegawa
 
What's new Azure DevOps in //Build 2019
Kazushi Kamegawa
 

What's hot (20)

PDF
Deploy Strategy with Azure Pipelines
Kazushi Kamegawa
 
PDF
NET5 and Diagnostics
Kazushi Kamegawa
 
PDF
How to create your own Azure Pipeline's image
Kazushi Kamegawa
 
PDF
Azure DevOps Management in Organization
Kazushi Kamegawa
 
PDF
Azure DevOpsとセキュリティ
Kazushi Kamegawa
 
PPTX
Azure DevOps ハンズオン Vo.3 ~Delivery Plans を用いたプロジェクトのスケジュール管理~
Takunori Minamisawa
 
PPTX
Visual studioonlineとwebサイトで始めるci/cdの第一歩
Kazunori Hamamoto
 
PPTX
What's Azure DevOps
Kazushi Kamegawa
 
PPTX
Static website + Piplelines
Akiyoshi Tsuchida
 
PDF
Azure DevOps 関西 2019 - Overview
Keiji Kamebuchi
 
PDF
PHPerだってサーバーレスしたい!
Yuta Matsumura
 
PDF
[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ
de:code 2017
 
PPTX
Azure DevOps ハンズオン Vo.1 ~Azure Boards を用いたアジャイル計画とポートフォリオマネジメント~
Takunori Minamisawa
 
PDF
The Internal of Serverless Plugins
Terui Masashi
 
PDF
[MR09] デスクトップ アプリをストアから配布するための A to Z
de:code 2017
 
PDF
「何もしないのにCIが失敗した」を防ぐ
Kazushi Kamegawa
 
PDF
Azure Functions Tips
Yuta Matsumura
 
PDF
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
de:code 2017
 
PDF
Introduction of Azure Docker Integration
Takekazu Omi
 
PPTX
Azure DevOps ハンズオン Vo.2 ~Azure DevOps Wiki を用いたドキュメントの作成~
Takunori Minamisawa
 
Deploy Strategy with Azure Pipelines
Kazushi Kamegawa
 
NET5 and Diagnostics
Kazushi Kamegawa
 
How to create your own Azure Pipeline's image
Kazushi Kamegawa
 
Azure DevOps Management in Organization
Kazushi Kamegawa
 
Azure DevOpsとセキュリティ
Kazushi Kamegawa
 
Azure DevOps ハンズオン Vo.3 ~Delivery Plans を用いたプロジェクトのスケジュール管理~
Takunori Minamisawa
 
Visual studioonlineとwebサイトで始めるci/cdの第一歩
Kazunori Hamamoto
 
What's Azure DevOps
Kazushi Kamegawa
 
Static website + Piplelines
Akiyoshi Tsuchida
 
Azure DevOps 関西 2019 - Overview
Keiji Kamebuchi
 
PHPerだってサーバーレスしたい!
Yuta Matsumura
 
[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ
de:code 2017
 
Azure DevOps ハンズオン Vo.1 ~Azure Boards を用いたアジャイル計画とポートフォリオマネジメント~
Takunori Minamisawa
 
The Internal of Serverless Plugins
Terui Masashi
 
[MR09] デスクトップ アプリをストアから配布するための A to Z
de:code 2017
 
「何もしないのにCIが失敗した」を防ぐ
Kazushi Kamegawa
 
Azure Functions Tips
Yuta Matsumura
 
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
de:code 2017
 
Introduction of Azure Docker Integration
Takekazu Omi
 
Azure DevOps ハンズオン Vo.2 ~Azure DevOps Wiki を用いたドキュメントの作成~
Takunori Minamisawa
 
Ad

Similar to Getting Start for Azure Pipelines (20)

PDF
AzureDevOpsで作るHoloLensアプリCI環境
Tatsuya Sakai
 
PDF
Ignite 2021秋 recap - 開発者向け新機能紹介
Kazushi Kamegawa
 
PDF
20190201 Cloud Native Kansai AKS Azure
Issei Hiraoka
 
PDF
20160720 aws development-tools-and_hybrid_cdp
Yukitaka Ohmura
 
PDF
Programming AWS with Perl at YAPC::Asia 2013
Yasuhiro Horiuchi
 
PDF
AWS Black Belt Online Seminar 2017 Deployment on AWS
Amazon Web Services Japan
 
PDF
qmake入門
hermit4 Ishida
 
PDF
サーバーレスの今とこれから
真吾 吉田
 
PDF
Azure DevOps と開発管理
Tsukasa Kato
 
PDF
20170629 技術者向けazure stack_paas
Shotaro Suzuki
 
PDF
Serverless for VUI
真吾 吉田
 
PDF
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~
Amazon Web Services Japan
 
PDF
クラウド開発に役立つ OSS あれこれ
Masataka MIZUNO
 
PDF
AWS SAMで始めるサーバーレスアプリケーション開発
真吾 吉田
 
PPTX
Jenkins x Kubernetesが簡単だと思ったら大変だった話
Masaki Yamamoto
 
PDF
Progressive Framework Vue.js 2.0
Toshiro Shimizu
 
PPTX
13016 n分で作るtype scriptでnodejs
Takayoshi Tanaka
 
PPTX
Dev Containers Customization Short version
Takao Tetsuro
 
PDF
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
Amazon Web Services Japan
 
PDF
Awsで実現するseleniumテスト高速術
finoue
 
AzureDevOpsで作るHoloLensアプリCI環境
Tatsuya Sakai
 
Ignite 2021秋 recap - 開発者向け新機能紹介
Kazushi Kamegawa
 
20190201 Cloud Native Kansai AKS Azure
Issei Hiraoka
 
20160720 aws development-tools-and_hybrid_cdp
Yukitaka Ohmura
 
Programming AWS with Perl at YAPC::Asia 2013
Yasuhiro Horiuchi
 
AWS Black Belt Online Seminar 2017 Deployment on AWS
Amazon Web Services Japan
 
qmake入門
hermit4 Ishida
 
サーバーレスの今とこれから
真吾 吉田
 
Azure DevOps と開発管理
Tsukasa Kato
 
20170629 技術者向けazure stack_paas
Shotaro Suzuki
 
Serverless for VUI
真吾 吉田
 
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~
Amazon Web Services Japan
 
クラウド開発に役立つ OSS あれこれ
Masataka MIZUNO
 
AWS SAMで始めるサーバーレスアプリケーション開発
真吾 吉田
 
Jenkins x Kubernetesが簡単だと思ったら大変だった話
Masaki Yamamoto
 
Progressive Framework Vue.js 2.0
Toshiro Shimizu
 
13016 n分で作るtype scriptでnodejs
Takayoshi Tanaka
 
Dev Containers Customization Short version
Takao Tetsuro
 
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
Amazon Web Services Japan
 
Awsで実現するseleniumテスト高速術
finoue
 
Ad

More from Kazushi Kamegawa (14)

PDF
DevOps and compliance and security
Kazushi Kamegawa
 
PDF
Ignite 2021 振り返り(DevOps)
Kazushi Kamegawa
 
PDF
Introduce TFSUG and Azure DevOps Server 2020
Kazushi Kamegawa
 
PDF
はじめてのコンテナーDocker & Windows & Linux
Kazushi Kamegawa
 
PPTX
その後のBash on windows
Kazushi Kamegawa
 
PDF
Windows10時代のクロスプラットフォーム開発
Kazushi Kamegawa
 
PDF
Cross Platform CI for Visual Studio Online
Kazushi Kamegawa
 
PDF
はじめてのTeam Foundation ServerとVisual Studio Online
Kazushi Kamegawa
 
PDF
トラブル発生、その時あなたがすることは?
Kazushi Kamegawa
 
PDF
Visual studio online and Agile
Kazushi Kamegawa
 
PDF
PowerShell and Release Management Server
Kazushi Kamegawa
 
PDF
Application insights で行ってみよう
Kazushi Kamegawa
 
PDF
TypeScript And ALM
Kazushi Kamegawa
 
PDF
Planning Effective Test Plan
Kazushi Kamegawa
 
DevOps and compliance and security
Kazushi Kamegawa
 
Ignite 2021 振り返り(DevOps)
Kazushi Kamegawa
 
Introduce TFSUG and Azure DevOps Server 2020
Kazushi Kamegawa
 
はじめてのコンテナーDocker & Windows & Linux
Kazushi Kamegawa
 
その後のBash on windows
Kazushi Kamegawa
 
Windows10時代のクロスプラットフォーム開発
Kazushi Kamegawa
 
Cross Platform CI for Visual Studio Online
Kazushi Kamegawa
 
はじめてのTeam Foundation ServerとVisual Studio Online
Kazushi Kamegawa
 
トラブル発生、その時あなたがすることは?
Kazushi Kamegawa
 
Visual studio online and Agile
Kazushi Kamegawa
 
PowerShell and Release Management Server
Kazushi Kamegawa
 
Application insights で行ってみよう
Kazushi Kamegawa
 
TypeScript And ALM
Kazushi Kamegawa
 
Planning Effective Test Plan
Kazushi Kamegawa
 

Recently uploaded (11)

PDF
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
PDF
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
PDF
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 
PDF
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
PDF
LoRaWAN ウェザーステーションキット v3 -WSC3-L 日本語ユーザーマニュアル
CRI Japan, Inc.
 
PPTX
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
PDF
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
PDF
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
PDF
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
PPTX
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
PDF
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
LoRaWAN ウェザーステーションキット v3 -WSC3-L 日本語ユーザーマニュアル
CRI Japan, Inc.
 
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 

Getting Start for Azure Pipelines