まじで。
Azure CLI v2.0.49 以上が入ってれば以下のコマンドで入ります。
az extension add --name azure-devops
こんなメッセージが出れば OK
The installed extension 'azure-devops' is in preview.
あとは、まだログインしてなかったら az login
でログインして、デフォルトのオーガナイゼーションを設定して
az devops configure --defaults organization=https://dev.azure.com/xxxx project=xxxx
ヘルプを見てみるとこんな感じでした。色々できそう。
>az devops -h Group az devops : Manage Azure DevOps organization level operations. Related Groups az pipelines: Manage Azure Pipelines az boards: Manage Azure Boards az repos: Manage Azure Repos az artifacts: Manage Azure Artifacts. Subgroups: admin : Manage administration operations. project : Manage team projects. service-endpoint : Manage service endpoints/service connections. team : Manage teams. Commands: configure : Configure the Azure DevOps CLI or view your configuration. feedback : Displays information on how to provide feedback to the Azure DevOps CLI team. login : Set the credential (PAT) to use for a particular organization. logout : Clear the credential for all or a particular organization.
リポジトリの情報見てみたかったらこんな感じ
$ az repos show -r Xxxx { "defaultBranch": "refs/heads/master", "id": "xxxx", "isFork": null, "name": "Xxxx", "parentRepository": null, "project": { "abbreviation": null, "description": null, "id": "xxxx", "lastUpdateTime": "2019-02-15T05:10:50.317Z", "name": "Xxxx", "revision": 243, "state": "wellFormed", "url": "https://dev.azure.com/xxxx/_apis/projects/xxxx", "visibility": "private" }, "remoteUrl": "https://xxxx", "size": 9537505, "sshUrl": "git@ssh.dev.azure.com:v3/xxxx/xxxx/xxxx", "url": "https://dev.azure.com/xxxx/xxxx/_apis/git/repositories/xxxx", "validRemoteUrls": null }
ふむ、個人的に気になるのは Azure Boards まわり。id 指定で見たり更新したり(GUIでやったほうが便利だった)、あとは知らなかったんですが Work Item Query Language (WIQL) で問い合わせ出来るみたいです。
まぁ SQL ですね。使える列というかフィールドは以下にありました。
ということでこんなクエリーを投げると…
az boards query --wiql "SELECT [System.Id] FROM WorkItems WHERE [System.IterationPath] = @CurrentIteration('[Tasks]\Tasks Team')"
こんな JSON が返ってきました。
[ { "fields": { "System.Id": 853 }, "id": 853, "relations": null, "rev": 21, "url": "https://dev.azure.com/xxxx/_apis/wit/workItems/853" }, { "fields": { "System.Id": 915 }, "id": 915, "relations": null, "rev": 21, "url": "https://dev.azure.com/xxxx/_apis/wit/workItems/915" }, { "fields": { "System.Id": 972 }, "id": 972, "relations": null, "rev": 14, "url": "https://dev.azure.com/xxxx/_apis/wit/workItems/972" }, ... 続く ... ]
CLI ツールが出来たことでいろんなものとの連携が捗りそうですね!