Azure DevOps CLI のサービス エンドポイント
Azure DevOps Services
このコマンドを az devops service-endpoint
使用すると、さまざまな種類のサービス接続を作成および管理できます。 サービス接続を使用すると、Azure DevOps は、Azure、Bitbucket、Kubernetes、Maven、GitHub などの外部サービスと通信できます。 では az devops service-endpoint
、次のタスクを実行できます。
- 構成ファイルを使用してサービス エンドポイントを作成する
- サービス エンドポイントを更新する
- GitHub サービス エンドポイント/接続を管理する
- Azure Resource Manager サービス エンドポイント/接続を管理する
- プロジェクトに対して定義されているサービス エンドポイントを一覧表示する
- サービス エンドポイントの詳細を取得します。
コマンドの構文の詳細については、次を参照してください az devops service-endpoint
。 サービス エンドポイントの REST API の構文については、「エンドポイント」を参照してください。
Azure cli コマンドを使用して、サービス エンドポイントの詳細の取得、一覧表示、削除、更新を行うこともできます。 Azure DevOps CLI へのインデックス作成の例、サービス エンドポイント、またはサービス接続を参照してください。
Web ポータルを使用してサービス接続を作成および編集するには、「サービス接続の管理」を参照してください。
構成ファイルを使用してサービス エンドポイントを作成する
構成ファイルを使用してサービス エンドポイントを作成するには、まず構成ファイルを定義する必要があります。 構成ファイルの内容は、Azure クラシック、Azure Data エクスプローラー、Bitbucket Cloud、Chef など、接続の種類によって異なります。
構成ファイルの形式
次の構文は、構成ファイルの json
形式を示しています。
{
"data": {},
"name": "MyNewServiceEndpoint",
"type": "Generic",
"url": "https://myserver",
"authorization": {
"parameters": {
"username": "myusername",
"password": "mysecretpassword"
},
"scheme": "UsernamePassword"
},
"isShared": false,
"isReady": true,
"serviceEndpointProjectReferences": [
{
"projectReference": {
"id": "c7e5f0b3-71fa-4429-9fb3-3321963a7c06",
"name": "TestProject"
},
"name": "MyNewServiceEndpoint"
}
]
}
次の表では、各パラメーターについて説明します。 このパラメーターは type
、任意の種類のサービス エンドポイントの作成をサポートします。
パラメーター | Type | Description |
---|---|---|
name |
string | エンドポイントのフレンドリ名を設定します。 |
type |
string | エンドポイントの種類を設定します。 |
url |
string | エンドポイントの URL を設定します。 |
authorization |
EndpointAuthorization | エンドポイントと通信するための承認データを設定します。 |
isShared |
boolean | サービス エンドポイントが他のプロジェクトと共有されているかどうかを示します。 |
isReady |
boolean | EndPoint 状態インジケーター。 |
serviceEndpointProjectReferences |
プロジェクト リファレンス | サービス エンドポイントのプロジェクト参照を設定します。 |
サポートされている型とその必要な入力パラメーターの一覧については、次の REST API エントリを実行できます。
https://dev.azure.com/{organization}/_apis/serviceendpoint/types?api-version=6.0-preview.1
また、サービス接続の種類とその他のパラメーターの説明については、サービス接続の管理、一般的なサービス接続の種類に関するページを参照してください。
create
コマンドを実行します
コマンドを使用してサービス エンドポイントを az devops service-endpoint create
作成します。
az devops service-endpoint create --service-endpoint-configuration
[--encoding {ascii, utf-16be, utf-16le, utf-8}]
[--org]
[--project]
パラメーター
- service-endpoint-configuration: 必須。 サービス エンドポイント構成を
json
含む構成ファイルの名前。 - encoding: 省略可能。 入力ファイルのエンコード。 既定値は
utf-8
です。 指定できる値:ascii
、utf-16be
、utf-16le
、utf-8
。 - org: Azure DevOps 組織の URL。
az devops configure -d organization=ORG_URL
を使用して、既定の組織を構成できます。 既定として構成されていない場合は必須。 - project: プロジェクトの名前または ID。
az devops configure -d project=NAME_OR_ID
を使用して、既定のプロジェクトを構成できます。 既定として構成されていない場合は必須。
例
次のコマンドは、ファイルを参照するサービス接続を ServiceConnectionGeneric.json
作成します。
az devops service-endpoint create --service-endpoint-configuration ./ServiceConnectionGeneric.json
正常に作成されると、 Id
サービス エンドポイントに割り当てられ、次の構文のような応答が返されます。
{
"administratorsGroup": null,
"authorization": {
"parameters": {
"password": null,
"username": "myusername"
},
"scheme": "UsernamePassword"
},
"createdBy": {
"descriptor": "aad.OGYxZTFlODEtMGJiNC03N2ZkLThkYzUtYjE3MTNiNTQ2MjQ4",
"directoryAlias": null,
"displayName": "Jamal Hartnett",
"id": "60c83423-4eb6-4c5e-8395-1e71cb4aef4c",
"imageUrl": "https://dev.azure.com/fabrikam/_apis/GraphProfile/MemberAvatars/aad.OGYxZTFlODEtMGJiNC03N2ZkLThkYzUtYjE3MTNiNTQ2MjQ4",
"inactive": null,
"isAadIdentity": null,
"isContainer": null,
"isDeletedInOrigin": null,
"profileUrl": null,
"uniqueName": "fabrikamfiber4@hotmail.com",
"url": "https://spsprodwcus0.vssps.visualstudio.com/A0214b8cc-a36c-4b93-abbf-6348473c2f0a/_apis/Identities/60c83423-4eb6-4c5e-8395-1e71cb4aef4c"
},
"data": {},
"description": null,
"groupScopeId": null,
"id": "3b6890ef-54b3-47ec-a907-a5d2f96237da",
"isReady": true,
"isShared": false,
"name": "MyNewServiceEndpoint",
"operationStatus": null,
"owner": "library",
"readersGroup": null,
"serviceEndpointProjectReferences": [
{
"name": "MyNewServiceEndpoint",
"projectReference": {
"id": "677da0fb-b067-4f77-b89b-f32c12bb8617",
"name": null
}
}
],
"type": "Generic",
"url": "https://myserver"
}
GitHub サービス エンドポイントを作成する
GitHub サービス エンドポイントを作成するには、次のコマンドを az devops service-endpoint github create
使用します。
az devops service-endpoint github create --github-url
--name
[--org]
[--project]
対話型モードでは、 az devops service-endpoint github create
コマンドはプロンプト メッセージを 使用して GitHub PAT トークン を要求し、自動化のために環境変数を使用して GitHub PAT トークンを AZURE_DEVOPS_EXT_GITHUB_PAT
設定します。 詳細については、「個人用アクセス トークン (PAT) を使用したサインイン」を参照してください。
Azure Resource Manager サービス エンドポイントを作成する
Azure Resource Manager サービス エンドポイントを作成するには、コマンドを az devops service-endpoint azurerm create
使用します。
az devops service-endpoint azurerm create --azure-rm-service-principal-id
--azure-rm-subscription-id
--azure-rm-subscription-name
--azure-rm-tenant-id
--name
[--azure-rm-service-principal-certificate-path]
[--org]
[--project]
クライアント シークレット/パスワードを使用する
対話型モードでは、コマンドは az devops service-endpoint azurerm create
プロンプト メッセージを使用してサービス プリンシパルのパスワード/シークレットを要求します。 自動化のために、環境変数を使用してサービス プリンシパルのパスワード/シークレットを AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY
設定します。
export AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY=<your_secret_here>
$env:AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY=<your_secret_here>
クライアント証明書を使用する
Microsoft Entra アプリケーションが認証に証明書を使用 する場合は、証明書の .pem ファイルを作成し、引数を使用して .pem ファイルへのパスを --azure-rm-service-principal-certificate-path
渡します。
openssl を使用して a.pem ファイルを作成できます。
openssl pkcs12 -in file.pfx -out file.pem -nodes -password pass:<password_here>