はじめて YAML でビルド定義したけど簡単でびっくりしました。これは XAML より記述少なくていいわ…。
pool:vmImage:'VS2017-Win2016'variables:solution:'**/*.sln'projects:'**/*.csproj'testProjects:'**/*Tests.csproj'buildConfiguration:'release'mainProject:'path to function app csproj file(ex: Hoge/Hoge.csproj))'steps:- task: DotNetCoreCLI@2 inputs:command:'restore'projects:'$(projects)'- task: DotNetCoreCLI@2 inputs:command:'build'- task: DotNetCoreCLI@2 inputs:command:'test'projects:'$(testProjects)'arguments:'--configuration $(buildConfiguration) --collect "Code coverage"'- script: dotnet publish --output $(Build.BinariesDirectory) --configuration $(buildConfiguration) $(mainProject) - task: ArchiveFiles@2 inputs:rootFolderOrFile: $(Build.BinariesDirectory) includeRootFolder:falsearchiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip - task: PublishBuildArtifacts@1
こうするとビルドID.zipというファイルが出来るので、あとは Release のパイプラインで Deploy Azure App Service の v4 系(まだプレビュー)から Run-From-Zip に対応してるっぽいので、それでさくっとデプロイ出来ます。
割といい感じっぽい。