Skip to content

Commit 268abbd

Browse files
committed
Merge remote-tracking branch 'origin/master' into Localization
2 parents 28d898d + 5c5442e commit 268abbd

File tree

379 files changed

+22934
-6369
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

379 files changed

+22934
-6369
lines changed

.gdn/.gdnbaselines

+66
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,72 @@
1313
}
1414
},
1515
"results": {
16+
"407cc257f37ce2a1a83660de9e661902b2aad514f7ca760e16ed4ac555cff1c3": {
17+
"signature": "407cc257f37ce2a1a83660de9e661902b2aad514f7ca760e16ed4ac555cff1c3",
18+
"alternativeSignatures": [
19+
"fee414b5ea08713bc228b9edf15baee950baba8f8fa35f9c67be6e86795b77ee"
20+
],
21+
"memberOf": [
22+
"default"
23+
],
24+
"createdDate": "2024-03-20 15:10:36Z"
25+
},
26+
"9115d8d02bc9d2b3aa7a0509f742da5087765a603bf954512923566fa4ffa946": {
27+
"signature": "9115d8d02bc9d2b3aa7a0509f742da5087765a603bf954512923566fa4ffa946",
28+
"alternativeSignatures": [
29+
"5330e2e2159d8073e5a7492e49d705b60c40b85436b9406e2ef4b8a19af77cca"
30+
],
31+
"memberOf": [
32+
"default"
33+
],
34+
"createdDate": "2024-03-20 15:10:36Z"
35+
},
36+
"784fc91626d8ee62fd3f99d56999618147f2b68218768aeeb7ea064ded65e6db": {
37+
"signature": "784fc91626d8ee62fd3f99d56999618147f2b68218768aeeb7ea064ded65e6db",
38+
"alternativeSignatures": [
39+
"b67a25df17a2218170da5aa5eff32ed84727c6ba9f02f7a2308c7162a0821dfa"
40+
],
41+
"memberOf": [
42+
"default"
43+
],
44+
"createdDate": "2024-03-20 15:10:36Z"
45+
},
46+
"158c4b23b4ff681530f30aa80653ae6261210f9777a2cfd0f3535ebc66dfb227": {
47+
"signature": "158c4b23b4ff681530f30aa80653ae6261210f9777a2cfd0f3535ebc66dfb227",
48+
"alternativeSignatures": [
49+
"c832f5a0cc0e2ce50496a2860c006279a37505b1a69c6a2ccb70295481910468"
50+
],
51+
"memberOf": [
52+
"default"
53+
],
54+
"createdDate": "2024-03-20 10:25:39Z",
55+
"justification": "PSAvoidUsingConvertToSecureStringWithPlainText"
56+
},
57+
"2c02eec8cf96bc63fb8ff72417da0e84215ba8dead870baedfdad351e7659372": {
58+
"signature": "2c02eec8cf96bc63fb8ff72417da0e84215ba8dead870baedfdad351e7659372",
59+
"alternativeSignatures": [
60+
"92f202b770c277f86d23afc5fc79c53b64a7f2fe00544f9f4e0019e36403fd40"
61+
],
62+
"memberOf": [
63+
"default"
64+
],
65+
"createdDate": "2024-03-20 10:25:39Z",
66+
"justification": "PSAvoidUsingUsernameAndPasswordParams"
67+
},
68+
"60a0aa841d38e44479e47d9d4349475efeb49a3e8f4cd8adfbe8ec832160713b": {
69+
"signature": "60a0aa841d38e44479e47d9d4349475efeb49a3e8f4cd8adfbe8ec832160713b",
70+
"alternativeSignatures": [
71+
"30cc30f55e8853b028db85e8d8056968a779e3376453b4a28abafd228153f6be"
72+
],
73+
"memberOf": [
74+
"default"
75+
],
76+
"createdDate": "2024-03-20 10:25:39Z",
77+
"justification": "PSAvoidUsingConvertToSecureStringWithPlainText"
78+
},
79+
80+
81+
1682
"a2a4017726eb18c7612da6ab3828cfdfd1218160fbd5d373c715476df1847499": {
1783
"signature": "a2a4017726eb18c7612da6ab3828cfdfd1218160fbd5d373c715476df1847499",
1884
"alternativeSignatures": [

.github/CODEOWNERS

+4
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ Tasks/AzureFileCopyV3/ @microsoft/release-management-task-team @manolerazvan
4343

4444
Tasks/AzureFileCopyV4/ @microsoft/release-management-task-team @manolerazvan
4545

46+
Tasks/AzureFileCopyV5/ @microsoft/release-management-task-team @manolerazvan
47+
48+
Tasks/AzureFileCopyV6/ @microsoft/release-management-task-team @manolerazvan
49+
4650
Tasks/AzureFunctionAppV1/ @finvamp1 @patelchandni @microsoft/release-management-task-team @manolerazvan
4751

4852
Tasks/AzureFunctionAppV2/ @finvamp1 @patelchandni @microsoft/release-management-task-team @manolerazvan

Tasks/AzureCLIV1/Strings/resources.resjson/en-US/resources.resjson

+2-1
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,6 @@
3434
"loc.messages.ErrorInSettingUpSubscription": "Error in setting up subscription",
3535
"loc.messages.SettingAzureConfigDir": "Setting AZURE_CONFIG_DIR env variable to: %s",
3636
"loc.messages.SettingAzureCloud": "Setting active cloud to: %s",
37-
"loc.messages.GlobalCliConfigAgentVersionWarning": "For agent version < 2.115.0, only global Azure CLI configuration can be used"
37+
"loc.messages.GlobalCliConfigAgentVersionWarning": "For agent version < 2.115.0, only global Azure CLI configuration can be used",
38+
"loc.messages.ExpiredServicePrincipalMessageWithLink": "Secret expired, update service connection at %s See https://aka.ms/azdo-rm-workload-identity-conversion to learn more about conversion to secret-less service connections."
3839
}

Tasks/AzureCLIV1/_buildConfigs/Node20/package-lock.json

+12-12
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Tasks/AzureCLIV1/_buildConfigs/Node20/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"@types/node": "^20.3.1",
2222
"@types/q": "1.0.7",
2323
"azure-devops-node-api": "^12.0.0",
24-
"azure-pipelines-task-lib": "^4.10.0"
24+
"azure-pipelines-task-lib": "^4.10.1"
2525
},
2626
"devDependencies": {
2727
"typescript": "5.1.6"

Tasks/AzureCLIV1/azureclitask.ts

+13-1
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,19 @@ export class azureclitask {
108108

109109
//set the task result to either succeeded or failed based on error was thrown or not
110110
if (toolExecutionError) {
111-
tl.setResult(tl.TaskResult.Failed, tl.loc("ScriptFailed", toolExecutionError));
111+
let message = tl.loc("ScriptFailed", toolExecutionError);
112+
113+
const expiredSecretErrorCode = "AADSTS7000222";
114+
let serviceEndpointSecretIsExpired = toolExecutionError.indexOf(expiredSecretErrorCode) >= 0;
115+
if (serviceEndpointSecretIsExpired) {
116+
const organizationURL = tl.getVariable('System.CollectionUri');
117+
const projectName = tl.getVariable('System.TeamProject');
118+
const serviceConnectionLink = encodeURI(`${organizationURL}${projectName}/_settings/adminservices?resourceId=${connectedService}`);
119+
120+
message = tl.loc('ExpiredServicePrincipalMessageWithLink', serviceConnectionLink);
121+
}
122+
123+
tl.setResult(tl.TaskResult.Failed, message);
112124
}
113125
else {
114126
tl.setResult(tl.TaskResult.Succeeded, tl.loc("ScriptReturnCode", 0));

Tasks/AzureCLIV1/package-lock.json

+12-12
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Tasks/AzureCLIV1/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"@types/node": "^16.11.39",
2222
"@types/q": "1.0.7",
2323
"azure-devops-node-api": "^12.0.0",
24-
"azure-pipelines-task-lib": "^4.10.0"
24+
"azure-pipelines-task-lib": "^4.10.1"
2525
},
2626
"devDependencies": {
2727
"typescript": "4.0.2"

Tasks/AzureCLIV1/task.json

+4-3
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
"demands": [],
2020
"version": {
2121
"Major": 1,
22-
"Minor": 236,
23-
"Patch": 0
22+
"Minor": 237,
23+
"Patch": 2
2424
},
2525
"minimumAgentVersion": "2.0.0",
2626
"instanceNameFormat": "Azure CLI $(scriptPath)",
@@ -157,6 +157,7 @@
157157
"ErrorInSettingUpSubscription": "Error in setting up subscription",
158158
"SettingAzureConfigDir": "Setting AZURE_CONFIG_DIR env variable to: %s",
159159
"SettingAzureCloud": "Setting active cloud to: %s",
160-
"GlobalCliConfigAgentVersionWarning": "For agent version < 2.115.0, only global Azure CLI configuration can be used"
160+
"GlobalCliConfigAgentVersionWarning": "For agent version < 2.115.0, only global Azure CLI configuration can be used",
161+
"ExpiredServicePrincipalMessageWithLink": "Secret expired, update service connection at %s See https://aka.ms/azdo-rm-workload-identity-conversion to learn more about conversion to secret-less service connections."
161162
}
162163
}

Tasks/AzureCLIV1/task.loc.json

+4-3
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
"demands": [],
2020
"version": {
2121
"Major": 1,
22-
"Minor": 236,
23-
"Patch": 0
22+
"Minor": 237,
23+
"Patch": 2
2424
},
2525
"minimumAgentVersion": "2.0.0",
2626
"instanceNameFormat": "ms-resource:loc.instanceNameFormat",
@@ -157,6 +157,7 @@
157157
"ErrorInSettingUpSubscription": "ms-resource:loc.messages.ErrorInSettingUpSubscription",
158158
"SettingAzureConfigDir": "ms-resource:loc.messages.SettingAzureConfigDir",
159159
"SettingAzureCloud": "ms-resource:loc.messages.SettingAzureCloud",
160-
"GlobalCliConfigAgentVersionWarning": "ms-resource:loc.messages.GlobalCliConfigAgentVersionWarning"
160+
"GlobalCliConfigAgentVersionWarning": "ms-resource:loc.messages.GlobalCliConfigAgentVersionWarning",
161+
"ExpiredServicePrincipalMessageWithLink": "ms-resource:loc.messages.ExpiredServicePrincipalMessageWithLink"
161162
}
162163
}

Tasks/AzureCLIV2/Strings/resources.resjson/en-US/resources.resjson

+2-1
Original file line numberDiff line numberDiff line change
@@ -45,5 +45,6 @@
4545
"loc.messages.JS_InvalidFilePath": "Script file could not be found at specified script location: '%s'. Please verify the script exists at the specified path. If you want to use inline script, specify input `Script Location` as `inlineScript`.",
4646
"loc.messages.JS_InvalidErrorActionPreference": "Invalid ErrorActionPreference '%s'. The value must be one of: 'Stop', 'Continue', or 'SilentlyContinue'",
4747
"loc.messages.GlobalCliConfigAgentVersionWarning": "For agent version < 2.115.0, only global Azure CLI configuration can be used",
48-
"loc.messages.UnacceptedScriptLocationValue": "%s is not a valid value for task input 'Script Location' (scriptLocation in YAML). Value can either be'inlineScript' or 'scriptPath'"
48+
"loc.messages.UnacceptedScriptLocationValue": "%s is not a valid value for task input 'Script Location' (scriptLocation in YAML). Value can either be'inlineScript' or 'scriptPath'",
49+
"loc.messages.ExpiredServicePrincipalMessageWithLink": "Secret expired, update service connection at %s See https://aka.ms/azdo-rm-workload-identity-conversion to learn more about conversion to secret-less service connections."
4950
}

Tasks/AzureCLIV2/_buildConfigs/Node20/package-lock.json

+12-12
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Tasks/AzureCLIV2/_buildConfigs/Node20/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"@types/node": "^20.3.1",
2222
"@types/q": "1.0.7",
2323
"azure-devops-node-api": "^12.0.0",
24-
"azure-pipelines-task-lib": "^4.10.0",
24+
"azure-pipelines-task-lib": "^4.10.1",
2525
"azure-pipelines-tasks-artifacts-common": "^2.212.0"
2626
},
2727
"devDependencies": {

Tasks/AzureCLIV2/azureclitask.ts

+13-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,19 @@ export class azureclitask {
9595
if(toolExecutionError === FAIL_ON_STDERR) {
9696
tl.setResult(tl.TaskResult.Failed, tl.loc("ScriptFailedStdErr"));
9797
} else if (toolExecutionError) {
98-
tl.setResult(tl.TaskResult.Failed, tl.loc("ScriptFailed", toolExecutionError));
98+
let message = tl.loc("ScriptFailed", toolExecutionError);
99+
100+
const expiredSecretErrorCode = "AADSTS7000222";
101+
let serviceEndpointSecretIsExpired = toolExecutionError.indexOf(expiredSecretErrorCode) >= 0;
102+
if (serviceEndpointSecretIsExpired) {
103+
const organizationURL = tl.getVariable('System.CollectionUri');
104+
const projectName = tl.getVariable('System.TeamProject');
105+
const serviceConnectionLink = encodeURI(`${organizationURL}${projectName}/_settings/adminservices?resourceId=${connectedService}`);
106+
107+
message = tl.loc('ExpiredServicePrincipalMessageWithLink', serviceConnectionLink);
108+
}
109+
110+
tl.setResult(tl.TaskResult.Failed, message);
99111
} else if (exitCode != 0){
100112
tl.setResult(tl.TaskResult.Failed, tl.loc("ScriptFailedWithExitCode", exitCode));
101113
}

0 commit comments

Comments
 (0)