Variabelegroepen toevoegen en gebruiken
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
In variabelengroepen worden waarden en geheimen opgeslagen die u mogelijk wilt doorgeven aan een YAML-pijplijn of die beschikbaar moeten worden gesteld in meerdere pijplijnen. U kunt variabelengroepen in meerdere pijplijnen in hetzelfde project delen en gebruiken.
Geheime variabelen in groepen variabelen zijn beveiligde resources. U kunt combinaties van goedkeuringen, controles en pijplijnmachtigingen toevoegen om de toegang tot geheime variabelen in een variabelegroep te beperken. Toegang tot niet-geheime variabelen wordt niet beperkt door goedkeuringen, controles en pijplijnmachtigingen.
Een variabelegroep maken
U kunt geen variabelegroepen maken in YAML, maar ze kunnen worden gebruikt zoals beschreven in Een variabelegroep gebruiken.
Een variabelegroep gebruiken
Als u een variabele uit een variabelegroep wilt gebruiken, voegt u een verwijzing toe naar de groep in uw YAML-bestand:
variables:
- group: my-variable-group
Vervolgens kunnen variabelen uit de variabelegroep worden gebruikt in uw YAML-bestand.
Als u zowel variabelen als variabelegroepen gebruikt, gebruikt u de name
/value
syntaxis voor de afzonderlijke niet-gegroepeerde variabelen:
variables:
- group: my-variable-group
- name: my-bare-variable
value: 'value of my-bare-variable'
Als u wilt verwijzen naar een variabelegroep, gebruikt u macrosyntaxis of een runtime-expressie. In het volgende voorbeeld heeft de groep my-variable-group
een variabele met de naam myhello
.
variables:
- group: my-variable-group
- name: my-passed-variable
value: $[variables.myhello] # uses runtime expression
steps:
- script: echo $(myhello) # uses macro syntax
- script: echo $(my-passed-variable)
U kunt verwijzen naar meerdere variabelegroepen in dezelfde pijplijn. Als meerdere variabelegroepen dezelfde variabele bevatten, stelt de variabelegroep die als laatste is opgenomen in het YAML-bestand de waarde van de variabele in.
variables:
- group: my-first-variable-group
- group: my-second-variable-group
U kunt ook verwijzen naar een variabelegroep in een sjabloon. In de sjabloon variables.yml
wordt naar de groep my-variable-group
verwezen. De variabelegroep bevat een variabele met de naam myhello
.
# variables.yml
variables:
- group: my-variable-group
In deze pijplijn wordt de variabele $(myhello)
uit de variabelegroep my-variable-group
opgenomen en variables.yml
waarnaar wordt verwezen.
# azure-pipeline.yml
stages:
- stage: MyStage
variables:
- template: variables.yml
jobs:
- job: Test
steps:
- script: echo $(myhello)
Een variabelegroep autoriseren
Als u met een variabele groep wilt werken, moet u de groep autoriseren. Als u alleen de naam van de variabelegroep in YAML opgeeft, kan iedereen die code naar uw opslagplaats kan pushen, de inhoud van geheimen in de variabelegroep extraheren. Gebruik een van de volgende technieken om de groep te autoriseren:
Als u een variabelegroep voor een specifieke pijplijn wilt autoriseren, opent u de pijplijn, selecteert u Bewerken en dient u vervolgens handmatig een build in de wachtrij te plaatsen. U ziet een resourceautorisatiefout en een actie Resources autoriseren bij de fout. Kies deze actie om de pijplijn expliciet toe te voegen als geautoriseerde gebruiker van de variabelegroep.
Als u een pijplijn wilt autoriseren om de variabelegroep te gebruiken, gaat u naar Azure Pipelines. Dit kan een goede optie zijn als u geen geheimen in de groep hebt. Selecteer Groepen bibliotheekvariabelen>en selecteer vervolgens de betreffende variabelegroep en schakel de instelling Toegang tot alle pijplijnen toestaan in.
Notitie
Als u een variabelegroep aan een pijplijn toevoegt en er geen resourceautorisatiefout optreedt in uw build wanneer u er een verwachtte, schakelt u de instelling Toegang tot alle pijplijnen toestaan uit.
Open de variabelewaarden in een gekoppelde variabelegroep op dezelfde manier als variabelen die u in de pijplijn zelf definieert.
Als u bijvoorbeeld toegang wilt krijgen tot de waarde van een variabele met de naam klant in een variabelegroep die is gekoppeld aan de pijplijn, gebruikt $(customer)
u deze in een taakparameter of een script. U kunt echter geen toegang krijgen tot geheime variabelen (versleutelde variabelen en sleutelkluisvariabelen) rechtstreeks in scripts. In plaats daarvan moeten ze worden doorgegeven als argumenten aan een taak. Zie geheimen voor meer informatie
Wijzigingen die u aanbrengt in een variabelegroep, zijn automatisch beschikbaar voor alle definities of fasen waaraan de variabelegroep wordt gekoppeld.
Groepen met variabelen weergeven
Gebruik de CLI om de variabelengroepen voor pijplijnuitvoeringen weer te geven met de opdracht az pipelines variable-group list . Als de Azure DevOps-extensie voor CLI nieuw voor u is, raadpleegt u Aan de slag met Azure DevOps CLI.
az pipelines variable-group list [--action {manage, none, use}]
[--continuation-token]
[--group-name]
[--org]
[--project]
[--query-order {Asc, Desc}]
[--top]
Optionele parameters
- actie: Hiermee geeft u de actie op die kan worden uitgevoerd op de variabelegroepen. Geaccepteerde waarden worden beheerd, geen en gebruik.
- continuation-token: geeft een lijst weer van de variabelegroepen nadat een vervolgtoken is opgegeven.
- groepsnaam: naam van de variabelegroep. Jokertekens worden geaccepteerd, zoals
new-var*
. - organisatie: URL van Azure DevOps-organisatie. Configureer de standaardorganisatie met behulp van
az devops configure -d organization=ORG_URL
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. Voorbeeld:--org https://dev.azure.com/MyOrganizationName/
. - project: naam of id van het project. Configureer het standaardproject met behulp van
az devops configure -d project=NAME_OR_ID
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. - queryvolgorde: geeft een lijst weer van de resultaten in oplopende of aflopende volgorde (de standaardvolgorde). Geaccepteerde waarden zijn Asc en Desc.
- top: Aantal variabelegroepen dat moet worden weergegeven.
Opmerking
Met de volgende opdracht worden de drie belangrijkste variabelegroepen in oplopende volgorde weergegeven en worden de resultaten in tabelindeling geretourneerd.
az pipelines variable-group list --top 3 --query-order Asc --output table
ID Name Type Number of Variables
---- ----------------- ------ ---------------------
1 myvariables Vsts 2
2 newvariables Vsts 4
3 new-app-variables Vsts 3
Details weergeven voor een variabelegroep
Geef de details van een variabelegroep in uw project weer met de opdracht az pipelines variable-group show . Als de Azure DevOps-extensie voor CLI nieuw voor u is, raadpleegt u Aan de slag met Azure DevOps CLI.
az pipelines variable-group show --group-id
[--org]
[--project]
Parameters
- groeps-id: vereist. Id van de variabelegroep. Zie Lijstvariabelegroepen om de groeps-id van de variabele te vinden.
- organisatie: URL van Azure DevOps-organisatie. Configureer de standaardorganisatie met behulp van
az devops configure -d organization=ORG_URL
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. Voorbeeld:--org https://dev.azure.com/MyOrganizationName/
. - project: naam of id van het project. Configureer het standaardproject met behulp van
az devops configure -d project=NAME_OR_ID
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
.
Opmerking
De volgende opdracht toont details voor de variabelegroep met de id 4 en retourneert de resultaten in YAML-indeling.
az pipelines variable-group show --group-id 4 --output yaml
authorized: false
description: Variables for my new app
id: 4
name: MyNewAppVariables
providerData: null
type: Vsts
variables:
app-location:
isSecret: null
value: Head_Office
app-name:
isSecret: null
value: Fabrikam
Een variabelegroep verwijderen
Verwijder een variabelegroep in uw project met de opdracht az pipelines variable-group delete . Als de Azure DevOps-extensie voor CLI nieuw voor u is, raadpleegt u Aan de slag met Azure DevOps CLI.
az pipelines variable-group delete --group-id
[--org]
[--project]
[--yes]
Parameters
- groeps-id: vereist. Id van de variabelegroep. Zie Lijstvariabelegroepen om de groeps-id van de variabele te vinden.
- organisatie: URL van Azure DevOps-organisatie. Configureer de standaardorganisatie met behulp van
az devops configure -d organization=ORG_URL
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. Voorbeeld:--org https://dev.azure.com/MyOrganizationName/
. - project: naam of id van het project. Configureer het standaardproject met behulp van
az devops configure -d project=NAME_OR_ID
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. - Ja: Optioneel. Er wordt niet om bevestiging gevraagd.
Opmerking
Met de volgende opdracht wordt de variabelegroep met de id 1 verwijderd en wordt niet om bevestiging gevraagd.
az pipelines variable-group delete --group-id 1 --yes
Deleted variable group successfully.
Variabelen toevoegen aan een variabelegroep
Met de Azure DevOps CLI kunt u een variabele toevoegen aan een variabelegroep in een pijplijn met de opdracht az pipelines variable-group variable-group variable create . Als de Azure DevOps-extensie voor CLI nieuw voor u is, raadpleegt u Aan de slag met Azure DevOps CLI.
az pipelines variable-group variable create --group-id
--name
[--org]
[--project]
[--secret {false, true}]
[--value]
Parameters
- groeps-id: vereist. Id van de variabelegroep. Zie Lijstvariabelegroepen om de groeps-id van de variabele te vinden.
- name: vereist. Naam van de variabele die u toevoegt.
- organisatie: URL van Azure DevOps-organisatie. Configureer de standaardorganisatie met behulp van
az devops configure -d organization=ORG_URL
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. Voorbeeld:--org https://dev.azure.com/MyOrganizationName/
. - project: naam of id van het project. Configureer het standaardproject met behulp van
az devops configure -d project=NAME_OR_ID
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. - geheim: Optioneel. Geeft aan of de waarde van de variabele een geheim is. Geaccepteerde waarden zijn onwaar en waar.
- waarde: vereist voor niet-geheime variabele. Waarde van de variabele. Als er geen waardeparameter is opgegeven voor geheime variabelen, wordt deze gekozen uit de omgevingsvariabele die is voorafgegaan door
AZURE_DEVOPS_EXT_PIPELINE_VAR_
of de gebruiker wordt gevraagd deze in te voeren via standaardinvoer. Een variabele met de naam MySecret kan bijvoorbeeld worden ingevoerd met behulp van de omgevingsvariabeleAZURE_DEVOPS_EXT_PIPELINE_VAR_MySecret
.
Opmerking
Met de volgende opdracht maakt u een variabele in de variabelegroep met id 4. De nieuwe variabele heeft de naam vereist aanmelding en heeft de waarde True en het resultaat wordt weergegeven in tabelindeling.
az pipelines variable-group variable create --group-id 4 --name requires-login --value True --output table
Name Is Secret Value
-------------- ----------- -------
requires-login False True
Variabelen weergeven in een variabelegroep
U kunt de variabelen in een variabelegroep weergeven met de opdracht az pipelines variable-group variable list . Als de Azure DevOps-extensie voor CLI nieuw voor u is, raadpleegt u Aan de slag met Azure DevOps CLI.
az pipelines variable-group variable list --group-id
[--org]
[--project]
Parameters
- groeps-id: vereist. Id van de variabelegroep. Zie Lijstvariabelegroepen om de groeps-id van de variabele te vinden.
- organisatie: URL van Azure DevOps-organisatie. Configureer de standaardorganisatie met behulp van
az devops configure -d organization=ORG_URL
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. Voorbeeld:--org https://dev.azure.com/MyOrganizationName/
. - project: naam of id van het project. Configureer het standaardproject met behulp van
az devops configure -d project=NAME_OR_ID
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
.
Opmerking
Met de volgende opdracht worden alle variabelen in de variabelegroep weergegeven met id 4 en wordt het resultaat in tabelindeling weergegeven.
az pipelines variable-group variable list --group-id 4 --output table
Name Is Secret Value
-------------- ----------- -----------
app-location False Head_Office
app-name False Fabrikam
requires-login False True
Variabelen in een variabelegroep bijwerken
Werk een variabele bij in een variabelegroep met de opdracht az pipelines variable-group variable update . Als de Azure DevOps-extensie voor CLI nieuw voor u is, raadpleegt u Aan de slag met Azure DevOps CLI.
az pipelines variable-group variable update --group-id
--name
[--new-name]
[--org]
[--project]
[--prompt-value {false, true}]
[--secret {false, true}]
[--value]
Parameters
- groeps-id: vereist. Id van de variabelegroep. Zie Lijstvariabelegroepen om de groeps-id van de variabele te vinden.
- name: vereist. Naam van de variabele die u toevoegt.
- nieuwe naam: optioneel. Geef op om de naam van de variabele te wijzigen.
- organisatie: URL van Azure DevOps-organisatie. Configureer de standaardorganisatie met behulp van
az devops configure -d organization=ORG_URL
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. Voorbeeld:--org https://dev.azure.com/MyOrganizationName/
. - project: naam of id van het project. Configureer het standaardproject met behulp van
az devops configure -d project=NAME_OR_ID
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. - prompt-value: stel in op True om de waarde van een geheime variabele bij te werken met behulp van een omgevingsvariabele of prompt via standaardinvoer. Geaccepteerde waarden zijn onwaar en waar.
- geheim: Optioneel. Geeft aan of de waarde van de variabele geheim blijft. Geaccepteerde waarden zijn onwaar en waar.
- waarde: Hiermee wordt de waarde van de variabele bijgewerkt. Voor geheime variabelen gebruikt u de parameter prompt-value om deze in te voeren via standaardinvoer. Voor niet-interactieve consoles kan deze worden gekozen uit de omgevingsvariabele
AZURE_DEVOPS_EXT_PIPELINE_VAR_
met voorvoegsel . Een variabele met de naam MySecret kan bijvoorbeeld worden ingevoerd met behulp van de omgevingsvariabeleAZURE_DEVOPS_EXT_PIPELINE_VAR_MySecret
.
Opmerking
Met de volgende opdracht wordt de variabele vereist aanmelding bijgewerkt met de nieuwe waarde False in de variabelegroep met id 4. Hiermee geeft u op dat de variabele een geheim is en het resultaat in YAML-indeling wordt weergegeven. U ziet dat in de uitvoer de waarde wordt weergegeven als null in plaats van Onwaar , omdat het een verborgen geheime waarde is.
az pipelines variable-group variable update --group-id 4 --name requires-login --value False --secret true --output yaml
requires-login:
isSecret: true
value: null
Variabelen verwijderen uit een variabelegroep
Verwijder een variabele uit een variabelegroep met de opdracht az pipelines variable-group variable delete . Als de Azure DevOps-extensie voor CLI nieuw voor u is, raadpleegt u Aan de slag met Azure DevOps CLI.
az pipelines variable-group variable delete --group-id
--name
[--org]
[--project]
[--yes]
Parameters
- groeps-id: vereist. Id van de variabelegroep. Zie Lijstvariabelegroepen om de groeps-id van de variabele te vinden.
- name: vereist. Naam van de variabele die u verwijdert.
- organisatie: URL van Azure DevOps-organisatie. Configureer de standaardorganisatie met behulp van
az devops configure -d organization=ORG_URL
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. Voorbeeld:--org https://dev.azure.com/MyOrganizationName/
. - project: naam of id van het project. Configureer het standaardproject met behulp van
az devops configure -d project=NAME_OR_ID
. Vereist als deze niet is geconfigureerd als standaard of wordt opgehaald met behulp vangit config
. - Ja: Optioneel. Er wordt niet om bevestiging gevraagd.
Opmerking
Met de volgende opdracht verwijdert u de variabele vereist aanmelding uit de variabelegroep met id 4 en wordt om bevestiging gevraagd.
az pipelines variable-group variable delete --group-id 4 --name requires-login
Are you sure you want to delete this variable? (y/n): y
Deleted variable 'requires-login' successfully.
Geheimen uit een Azure-sleutelkluis koppelen
Notitie
Key Vaults die gebruikmaken van op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) worden niet ondersteund.
Koppel een bestaande Azure-sleutelkluis aan een variabelegroep en wijs selectieve kluisgeheimen toe aan de variabelegroep.
Schakel op de pagina Variabelengroepen geheimen uit een Azure-sleutelkluis in als variabelen. U hebt een bestaande sleutelkluis met uw geheimen nodig. Maak een sleutelkluis met behulp van Azure Portal.
Geef het eindpunt van uw Azure-abonnement en de naam van de kluis met uw geheimen op.
Zorg ervoor dat de Azure-serviceverbinding ten minste beheermachtigingen voor ophalen en weergeven heeft voor de kluis voor geheimen. Schakel Azure Pipelines in om deze machtigingen in te stellen door Autoriseren naast de kluisnaam te kiezen. U kunt de machtigingen ook handmatig instellen in Azure Portal:
- Open Instellingen voor de kluis en kies vervolgens Access-beleid>Nieuwe toevoegen.
- Selecteer Principal selecteren en kies vervolgens de service-principal voor uw clientaccount.
- Selecteer Geheime machtigingen en zorg ervoor dat Ophalen en Lijst vinkjes hebben.
- Selecteer OK om de wijzigingen op te slaan.
Selecteer op de pagina Variabelengroepen de optie + Toevoegen om specifieke geheimen in uw kluis te selecteren voor toewijzing aan deze variabelegroep.
Sleutelkluisgeheimen beheren
Zie de volgende lijst met handige tips voor het beheren van geheimen.
Alleen de geheime namen worden toegewezen aan de variabelegroep, niet aan de geheime waarden. De meest recente geheime waarde, opgehaald uit de kluis, wordt gebruikt in de pijplijnuitvoering die is gekoppeld aan de variabelegroep.
Wijzigingen die zijn aangebracht in bestaande geheimen in de sleutelkluis, zijn automatisch beschikbaar voor alle pijplijnen waarin de variabelegroep wordt gebruikt.
Wanneer nieuwe geheimen worden toegevoegd aan of verwijderd uit de kluis, worden de bijbehorende variabelegroepen niet automatisch bijgewerkt. De geheimen in de variabelegroep moeten expliciet worden bijgewerkt, zodat de pijplijnen die gebruikmaken van de variabelegroep correct worden uitgevoerd.
Azure Key Vault biedt ondersteuning voor het opslaan en beheren van cryptografische sleutels en geheimen in Azure. Op dit moment ondersteunt de integratie van groepen met variabelen in Azure Pipelines alleen het toewijzen van geheimen uit de Azure-sleutelkluis. Cryptografische sleutels en certificaten worden niet ondersteund.
Variabelen in een groep uitvouwen
Wanneer u een variabele in een groep instelt en deze in een YAML-bestand gebruikt, is deze gelijk aan andere gedefinieerde variabelen in het YAML-bestand. Zie Variabelen voor meer informatie over prioriteit van variabelen.
Verwante artikelen:
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor