0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Azure Repos のブランチポリシーを Azure CLI で設定してみた

Posted at

デフォルトブランチに直接プッシュするのを禁止して、別のブランチからプルリクエストを経てデフォルトブランチにマージする、という開発チームのルールがあったとします。これを master とか main とかに設定しているデフォルトブランチ共通のブランチポリシーを Azure Repos のプロジェクトに対して Azure CLI で設定してみます。

現状のブランチポリシーの確認

ポリシーは設定されておらず、JSON の中身は空です。

bash
$ az repos policy list \
  --org https://dev.azure.com/mnrsdev/ \
  --project mnrror
[]

ブランチポリシー JSON を作成

type.id は "Minimum number of reviewers" の ID です。

branch-policy.json
{
  "isEnabled": true,
  "isBlocking": true,
  "type": {
    "id": "fa4e907d-c16b-4a4c-9dfa-4906e5d171dd"
  },
  "settings": {
    "minimumApproverCount": 1,
    "creatorVoteCounts": true,
    "scope": [
      {
        "repositoryId": null,
        "refName": null,
        "matchKind": "DefaultBranch"
      }
    ]
  }
}

ブランチポリシーを登録

bash
$ az repos policy create \
  --org https://dev.azure.com/mnrsdev/ \
  --project mnrror \
  --config branch-policy.json

ブランチポリシーの設定を確認

デフォルトブランチのブランチポリシーが作成されました。

image.png

最低一人以上のレビューを経ないとデフォルトブランチにマージできなくなりました。

またプルリクエストした人とレビューする人が同じでも良いように "Allow requestors to approve their own changes" をオンにしています。

image.png

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?