Azure DevOps CLI-tjänstslutpunkt
Azure DevOps Services
Med kommandot az devops service-endpoint
kan du skapa och hantera olika typer av tjänstanslutningar. Med en tjänstanslutning kan Azure DevOps kommunicera med en extern tjänst, till exempel Azure, Bitbucket, Kubernetes, Maven, GitHub med mera. Med az devops service-endpoint
kan du utföra följande uppgifter:
- Skapa en tjänstslutpunkt med hjälp av en konfigurationsfil
- Uppdatera en tjänstslutpunkt
- Hantera GitHub-tjänstslutpunkter/anslutningar
- Hantera Azure Resource Manager-tjänstslutpunkter/anslutningar
- Lista tjänstslutpunkter som definierats för ett projekt
- Hämta information om en tjänstslutpunkt.
Information om kommandosyntax finns i az devops service-endpoint
. Syntax för REST-API:et för tjänstslutpunkter finns i Slutpunkter.
Du kan också använda azure cli-kommandon för att hämta information, lista, ta bort och uppdatera en tjänstslutpunkt. Se Index till Azure DevOps CLI-exempel, tjänstslutpunkter eller tjänstanslutningar.
Information om hur du använder webbportalen för att skapa och redigera tjänstanslutningar finns i Hantera tjänstanslutningar.
Skapa tjänstslutpunkt med hjälp av en konfigurationsfil
Om du vill skapa en tjänstslutpunkt med hjälp av en konfigurationsfil måste du först definiera konfigurationsfilen. Innehållet i konfigurationsfilen varierar beroende på typen av anslutning, till exempel Azure Classic, Azure Data Explorer, Bitbucket Cloud, Chef med mera.
Konfigurationsfilformat
Följande syntax visar json
formatet för konfigurationsfilen.
{
"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"
}
]
}
I följande tabell beskrivs varje parameter. Parametern type
stöder skapande av alla typer av tjänstslutpunkter.
Parameter | Typ | Description |
---|---|---|
name |
sträng | Anger slutpunktens eget namn. |
type |
sträng | Anger slutpunktens typ. |
url |
sträng | Anger slutpunktens URL. |
authorization |
EndpointAuthorization | Anger auktoriseringsdata för att prata med slutpunkten. |
isShared |
boolean | Anger om tjänstslutpunkten delas med andra projekt eller inte. |
isReady |
boolean | Slutpunktstillståndsindikator. |
serviceEndpointProjectReferences |
Projektreferens | Anger projektreferens för tjänstslutpunkten. |
För en lista över typer som stöds och deras obligatoriska indataparametrar kan du använda följande REST API-post:
https://dev.azure.com/{organization}/_apis/serviceendpoint/types?api-version=6.0-preview.1
En beskrivning av tjänstanslutningstyper och andra parametrar som de kan kräva finns i Hantera tjänstanslutningar, Common Service-anslutningstyper.
Kör kommandot create
Du skapar en tjänstslutpunkt med az devops service-endpoint create
kommandot .
az devops service-endpoint create --service-endpoint-configuration
[--encoding {ascii, utf-16be, utf-16le, utf-8}]
[--org]
[--project]
Parametrar
- service-endpoint-configuration: Krävs. Namnet på konfigurationsfilen
json
med tjänstslutpunktskonfiguration. - kodning: Valfritt. Kodning av indatafilen. Standard är
utf-8
. Accepterade värden:ascii
,utf-16be
,utf-16le
,utf-8
. - org: Url för Azure DevOps-organisationen. Du kan konfigurera standardorganisationen med .
az devops configure -d organization=ORG_URL
Krävs om det inte är konfigurerat som standard. - project: Projektets namn eller ID. Du kan konfigurera standardprojektet med .
az devops configure -d project=NAME_OR_ID
Krävs om det inte är konfigurerat som standard.
Exempel
Följande kommando skapar en tjänstanslutning som refererar till ServiceConnectionGeneric.json
filen.
az devops service-endpoint create --service-endpoint-configuration ./ServiceConnectionGeneric.json
När det har skapats tilldelas en Id
till tjänstslutpunkten och ett svar som liknar följande syntax returneras.
{
"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"
}
Skapa en GitHub-tjänstslutpunkt
Om du vill skapa en GitHub-tjänstslutpunkt använder du az devops service-endpoint github create
kommandot:
az devops service-endpoint github create --github-url
--name
[--org]
[--project]
I interaktivt läge az devops service-endpoint github create
frågar kommandot efter en GitHub PAT-token med hjälp av ett promptmeddelande, för automatiseringsändamål ange GitHub PAT-token med hjälp av AZURE_DEVOPS_EXT_GITHUB_PAT
miljövariabeln. Mer information finns i Logga in med en personlig åtkomsttoken (PAT).
Skapa en Azure Resource Manager-tjänstslutpunkt
Använd kommandot för az devops service-endpoint azurerm create
att skapa en Azure Resource Manager-tjänstslutpunkt.
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]
Använda en klienthemlighet/ett lösenord
I interaktivt läge az devops service-endpoint azurerm create
frågar kommandot efter ett lösenord/hemlighet för tjänstens huvudnamn med hjälp av ett meddelande. För automatiseringsändamål anger du lösenordet/hemligheten för tjänstens huvudnamn med hjälp av AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY
miljövariabeln.
export AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY=<your_secret_here>
$env:AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY=<your_secret_here>
Använda ett klientcertifikat
Om Microsoft Entra-programmet använder certifikat för autentisering skapar du en .pem-fil för certifikatet och skickar sökvägen till .pem-filen med argumentet --azure-rm-service-principal-certificate-path
.
Du kan skapa en.pem-fil med hjälp av openssl:
openssl pkcs12 -in file.pfx -out file.pem -nodes -password pass:<password_here>