Update-VSTeamVariableGroup
SYNOPSIS
Updates an existing variable group
SYNTAX
ByHashtable
Update-VSTeamVariableGroup -Id <String> -Name <String> [-Description <String>] -Variables <Hashtable> [-Force]
-ProjectName <String> [-WhatIf] [-Confirm] [<CommonParameters>]
ByBody
Update-VSTeamVariableGroup -Id <String> -Body <String> [-Force] -ProjectName <String> [-WhatIf] [-Confirm]
[<CommonParameters>]
DESCRIPTION
Updates an existing variable group
EXAMPLES
Example 1
$methodParameters = @{
ProjectName = "some_project_name"
Name = "new_variable_group"
Description = "Describe the Variable Group"
Type = "Vsts"
Variables = @{
key1 = @{
value = "value1"
isSecret = $true
}
}
}
$newVariableGroup = Add-VSTeamVariableGroup @methodParameters
$methodParameters = @{
id = $newVariableGroup.id
ProjectName = "some_project_name"
Name = "new_variable_group"
Description = "Describe the Variable Group"
Type = "AzureKeyVault"
Variables = @{
name_of_existing_secret = @{
enabled = $true
contentType = ""
value = ""
isSecret = $true
}
}
ProviderData = @{
serviceEndpointId = "AzureRMServiceEndpointGuid"
vault = "name_of_existing_key_vault"
}
}
Update-VSTeamVariableGroup @methodParameters
Example 2
# Copy variable group varGroupName from project sourceProjectName to project targetProjectName. If varGroupName already exists, we'll update it; else, we'll add it.
$Name = "varGroupName"
$FromProject = "sourceProjectName"
$ToProject = "targetProjectName"
$FromVariableGroupObject = Get-VSTeamVariableGroup -Name $Name -ProjectName $FromProject
$body = ConvertTo-Json -InputObject $FromVariableGroupObject -Depth 100 -Compress
$toVariableGroupObject = Get-VSTeamVariableGroup -Name $Name -ProjectName $ToProject
if ($toVariableGroupObject) {
Update-VSTeamVariableGroup -Body $body -ProjectName $ToProject -Id $toVariableGroupObject.id
}
else {
Add-VSTeamVariableGroup -Body $body -ProjectName $ToProject
}
PARAMETERS
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Force
Does not prompt
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Id
ID of the existing variable group
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False
-Description
The variable group description
Type: String
Parameter Sets: ByHashtable
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False
-Name
The variable group name
Type: String
Parameter Sets: ByHashtable
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False
-Variables
The variable group variables.
Type: Hashtable
Parameter Sets: ByHashtable
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False
-Body
The json that represents the task group as a string
Type: String
Parameter Sets: ByBody
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False
-ProjectName
Specifies the team project for which this function operates.
You can tab complete from a list of available projects.
You can use Set-VSTeamDefaultProject to set a default project so you do not have to pass the ProjectName with each call.
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
INPUTS
System.String
System.Collections.Hashtable
OUTPUTS
System.Object
NOTES
Prerequisites:
Set the account and version that all calls will use with Set-VSTeamAccount. Default version sets to API version 3.0 (TFS2017) if not manually set.
tips:
- check called version of the API with Get-VSTeamAPIVersion or Get-VSTeamInfo
- use Set-VSTeamDefaultProject to set default project for every call
- use Set-VSTeamDefaultAPITimeout to change the default timeout of 60 seconds for all calls.
- use Profiles to load an account and the correct version