より良いエンジニアを目指して

1日1つ。良くなる!上手くなる!

ゆるふわC#もくもく勉強会#62 〜 Azure DevOpsを試してみる

weeyble-csharp.connpass.com

ちなみに本会ですが、実は公序良俗に反しなければどのような技術を扱っても大丈夫です。そもそも C# エンジニアが C# だけしか使わないというわけではありませんし。

秋葉原 C# もくもく会 #61 勉強会を開催しました - rksoftwareより

じゃあ、Pythonやります!

ではなく、せっかくなので、Microsoft Tech Summitの復習をということでAzure DevOpsをやろうかと思います。

Azure DevOps

ログイン

意外とログインページを毎回探してます。

Azure DevOps Services | Microsoft Azure

Get Started ?

下記資料を見たのですが。古い気がしますね。

Azure DevOps プロジェクトのドキュメント - クイックスタートとチュートリアル | Microsoft Docs

そこで、私なりにGet Startedすることにしました。

Reposを選んでRepositoryを追加やインポートするより、Pipelineを選択した方が良さそうです。

今回はGitHub上の私のソースをCIするというシナリオになります。

f:id:rimever:20181108195019p:plain

New Pipelineを選択。

GitHubを選択

f:id:rimever:20181108195129p:plain

Authorizeで認証します。

f:id:rimever:20181108195202p:plain

リポジトリを選択。

f:id:rimever:20181108195326p:plain

テンプレートを選択します。推奨してくれたのでDesktopでいいや。

f:id:rimever:20181108195607p:plain

「Save and Run」を実行。

f:id:rimever:20181108195701p:plain

するとビルドが始まります。

f:id:rimever:20181108195854p:plain

jなんとかおじさんに比べて、コンソールログは洗練されていて、それっぽい。

で、失敗。ダメじゃん……。このプロジェクトはMeCabが絡んでいるので、あまりいいサンプルではありませんでした。

f:id:rimever:20181108200430p:plain

基本的な流れは、これで問題ない、はず。

YAML

一時、下記のようなテキストが表示されましたが、ちゃっかり、AzureDevopsがファイルを追加しています

# .NET Desktop
# Build and run tests for .NET Desktop or Windows classic desktop solutions.
# Add steps that publish symbols, save build artifacts, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/windows/dot-net

pool:
  vmImage: 'VS2017-Win2016'

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@0

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)'

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

- task: VSTest@2
  inputs:
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

課題

NUnitテストが走っていない……。

下記のあたりをごちゃごちゃやっていてもくもくタイム終了……。

Visual Studio Test task - Azure Pipelines & TFS | Microsoft Docs

unit testing - vstest nunit xml.document error .net core - Stack Overflow

その他

プロジェクトの削除

これは迷いました。

プロジェクトのページより上の組織のページよりOrgnization Settingsから行う必要があるんですね。

Delete or remove a project - Azure DevOps & TFS | Microsoft Docs

プロセス

プロジェクトの作成時にAdvancedとして選択できます。

あまり考えず Agileとしていましたが、CMMIスクラムというのも用意されているようです。

Choose a process - Azure Boards and TFS | Microsoft Docs