Skip to content

Commit c48e95e

Browse files
committed
test: Update all user settings to English (United Kingdom)
1 parent f9d349a commit c48e95e

File tree

2 files changed

+45
-1
lines changed

2 files changed

+45
-1
lines changed

scripts/Set-AllUserLocalesToUk.ps1

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
Install-Module -Name Microsoft.Xrm.Tooling.CrmConnector.PowerShell -Force -Scope CurrentUser -AllowClobber
2+
3+
Write-Host "Updating user settings to English (United Kingdom)"
4+
5+
$conn = Get-CrmConnection -ConnectionString "Url=$URL; ClientId=$ClientId; ClientSecret=$ClientSecret; AuthType=ClientSecret"
6+
7+
$condition = [Microsoft.Xrm.Sdk.Query.ConditionExpression]::new();
8+
$condition.AttributeName = "localeid";
9+
$condition.Operator = ConditionOperator.NotEqual;
10+
$condition.Values.Add(2057);
11+
12+
$filter = [Microsoft.Xrm.Sdk.Query.FilterExpression]::new();
13+
$filter.Conditions.Add($condition);
14+
15+
$query = [Microsoft.Xrm.Sdk.Query.QueryExpression]::new("usersettings");
16+
$query.ColumnSet.AddColumns("localeid");
17+
$query.Criteria.AddFilter($filter);
18+
19+
$executeMultipleSettings = [Microsoft.Xrm.Sdk.ExecuteMultipleSettings]::new()
20+
$executeMultipleSettings.ContinueOnError = $true
21+
$executeMultipleSettings.ReturnResponses = $false
22+
23+
$executeMultipleRequests = [Microsoft.Xrm.Sdk.OrganizationRequestCollection]::new()
24+
25+
$usersettings = $conn.RetrieveMultiple($query).Entities
26+
$usersettings | ForEach-Object {
27+
$_.Attributes['localeid'] = 2057
28+
$updateRequest = [Microsoft.Xrm.Sdk.Messages.UpdateRequest]::new()
29+
$updateRequest.Target = $_
30+
$executeMultipleRequests.Add($updateRequest)
31+
}
32+
33+
$executeMultipleRequest = [Microsoft.Xrm.Sdk.Messages.ExecuteMultipleRequest]::new()
34+
$executeMultipleRequest.Settings = $executeMultipleSettings
35+
$executeMultipleRequest.Requests = $executeMultipleRequests
36+
$conn.Execute($executeMultipleRequest)

templates/build-and-test-stages.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,15 @@ stages:
4949
echo "##vso[task.setvariable variable=EnvironmentUrl;isOutput=true]$env:POWERPLATFORMCREATEENVIRONMENT_BUILDTOOLS_ENVIRONMENTURL"
5050
echo "##vso[task.setvariable variable=EnvironmentName;isOutput=true]$env:POWERPLATFORMCREATEENVIRONMENT_BUILDTOOLS_ENVIRONMENTID"
5151
displayName: Set output variables
52-
name: SetEnvironmentOutputVariables
52+
name: SetEnvironmentOutputVariables
53+
- task: PowerShell@2
54+
displayName: Update user settings to English (United Kingdom)
55+
inputs:
56+
filePath: '.\scripts\Set-AllUserLocalesToUk.ps1'
57+
env:
58+
URL: $[ SetEnvironmentOutputVariables.EnvironmentUrl ]
59+
ClientId: $(Application User Client ID)
60+
ClientSecret: $(Application User Client Secret)
5361
- stage: BuildAndTest
5462
displayName: Build and Test
5563
dependsOn: ProvisionEnvironment

0 commit comments

Comments
 (0)