Endpoint servizio dell'interfaccia della riga di comando di Azure DevOps
Servizi di Azure DevOps
Con il az devops service-endpoint
comando è possibile creare e gestire diversi tipi di connessioni al servizio. Una connessione al servizio consente ad Azure DevOps di comunicare con un servizio esterno, ad esempio Azure, Bitbucket, Kubernetes, Maven, GitHub e altro ancora. Con az devops service-endpoint
è possibile eseguire le attività seguenti:
- Creare un endpoint di servizio usando un file di configurazione
- Aggiornare un endpoint di servizio
- Gestire endpoint/connessioni del servizio GitHub
- Gestire endpoint servizio/connessioni di Azure Resource Manager
- Elencare gli endpoint di servizio definiti per un progetto
- Ottenere i dettagli di un endpoint di servizio.
Per informazioni dettagliate sulla sintassi dei comandi, vedere az devops service-endpoint
. Per la sintassi nell'API REST per gli endpoint di servizio, vedere Endpoint.
È anche possibile usare i comandi dell'interfaccia della riga di comando di Azure per ottenere dettagli, elencare, eliminare e aggiornare un endpoint di servizio. Vedere Esempi dell'interfaccia della riga di comando di Azure DevOps, endpoint di servizio o connessioni al servizio.
Per usare il portale Web per creare e modificare le connessioni al servizio, vedere Gestire le connessioni al servizio.
Creare un endpoint di servizio usando un file di configurazione
Per creare un endpoint di servizio usando un file di configurazione, è prima necessario definire il file di configurazione. Il contenuto del file di configurazione varia a seconda del tipo di connessione, ad esempio Azure classico, Azure Esplora dati, Bitbucket Cloud, Chef e altro ancora.
Formato del file di configurazione
La sintassi seguente illustra il json
formato per il file di configurazione.
{
"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"
}
]
}
Nella tabella seguente viene descritto ogni parametro. Il type
parametro supporta la creazione di qualsiasi tipo di endpoint di servizio.
Parametro | Tipo | Descrizione |
---|---|---|
name |
stringa | Imposta il nome descrittivo dell'endpoint. |
type |
string | Imposta il tipo dell'endpoint. |
url |
string | Imposta l'URL dell'endpoint. |
authorization |
EndpointAuthorization | Imposta i dati di autorizzazione per comunicare con l'endpoint. |
isShared |
boolean | Indica se l'endpoint del servizio è condiviso con altri progetti o meno. |
isReady |
boolean | Indicatore di stato endpoint. |
serviceEndpointProjectReferences |
Riferimento al progetto | Imposta il riferimento al progetto dell'endpoint del servizio. |
Per un elenco dei tipi supportati e dei relativi parametri di input necessari, è possibile eseguire la voce dell'API REST seguente:
https://dev.azure.com/{organization}/_apis/serviceendpoint/types?api-version=6.0-preview.1
Per una descrizione dei tipi di connessione del servizio e di altri parametri che potrebbero essere necessari, vedere Gestire le connessioni al servizio, tipi di connessione common service.
Eseguire il comando create
Si crea un endpoint di servizio con il az devops service-endpoint create
comando .
az devops service-endpoint create --service-endpoint-configuration
[--encoding {ascii, utf-16be, utf-16le, utf-8}]
[--org]
[--project]
Parametri
- service-endpoint-configuration: obbligatorio. Nome del
json
file di configurazione con la configurazione dell'endpoint di servizio. - encoding: facoltativo. Codifica del file di input. Il valore predefinito è
utf-8
. Valori accettati:ascii
,utf-16be
,utf-16le
,utf-8
. - org: URL dell'organizzazione di Azure DevOps. È possibile configurare l'organizzazione predefinita usando
az devops configure -d organization=ORG_URL
. Obbligatorio se non configurato come predefinito. - project: nome o ID del progetto. È possibile configurare il progetto predefinito usando
az devops configure -d project=NAME_OR_ID
. Obbligatorio se non configurato come predefinito.
Esempio
Il comando seguente crea una connessione al servizio che fa riferimento al ServiceConnectionGeneric.json
file.
az devops service-endpoint create --service-endpoint-configuration ./ServiceConnectionGeneric.json
Al termine della creazione, viene assegnato un oggetto Id
all'endpoint del servizio e viene restituita una risposta simile alla sintassi seguente.
{
"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"
}
Creare un endpoint del servizio GitHub
Per creare un endpoint del servizio GitHub, usare il az devops service-endpoint github create
comando :
az devops service-endpoint github create --github-url
--name
[--org]
[--project]
In modalità interattiva, il az devops service-endpoint github create
comando chiede un token PAT gitHub usando un messaggio di prompt, allo scopo di automatizzare impostare il token PAT di GitHub usando la AZURE_DEVOPS_EXT_GITHUB_PAT
variabile di ambiente. Per altre informazioni, vedere Accedere con un token di accesso personale .
Creare un endpoint del servizio Azure Resource Manager
Per creare un endpoint del servizio Azure Resource Manager, usare il az devops service-endpoint azurerm create
comando .
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]
Usare un segreto client/password
In modalità interattiva, il az devops service-endpoint azurerm create
comando richiede una password o un segreto dell'entità servizio usando un messaggio di prompt. Ai fini dell'automazione, impostare la password o il segreto dell'entità servizio usando la AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY
variabile di ambiente.
export AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY=<your_secret_here>
$env:AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY=<your_secret_here>
Usare un certificato client
Se l'applicazione Microsoft Entra usa il certificato per l'autenticazione, creare un file con estensione pem per il certificato e passare il percorso al file con estensione pem usando l'argomento --azure-rm-service-principal-certificate-path
.
È possibile creare un file con estensione pem usando openssl:
openssl pkcs12 -in file.pfx -out file.pem -nodes -password pass:<password_here>