sfdx-hardis 8.20.1 → 8.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commands/hardis/project/deploy/smart.d.ts +2 -2
- package/lib/commands/hardis/project/deploy/smart.js +10 -9
- package/lib/commands/hardis/project/deploy/smart.js.map +1 -1
- package/lib/commands/hardis/project/promotion/create.js +1 -1
- package/lib/commands/hardis/project/promotion/list-candidates.js +2 -0
- package/lib/commands/hardis/project/promotion/list-candidates.js.map +1 -1
- package/lib/common/gitProvider/azureDevops.d.ts +12 -1
- package/lib/common/gitProvider/azureDevops.js +73 -1
- package/lib/common/gitProvider/azureDevops.js.map +1 -1
- package/lib/common/gitProvider/bitbucket.d.ts +3 -1
- package/lib/common/gitProvider/bitbucket.js +24 -3
- package/lib/common/gitProvider/bitbucket.js.map +1 -1
- package/lib/common/gitProvider/gitProviderRoot.d.ts +9 -1
- package/lib/common/gitProvider/gitProviderRoot.js +27 -7
- package/lib/common/gitProvider/gitProviderRoot.js.map +1 -1
- package/lib/common/gitProvider/github.d.ts +12 -1
- package/lib/common/gitProvider/github.js +63 -2
- package/lib/common/gitProvider/github.js.map +1 -1
- package/lib/common/gitProvider/gitlab.d.ts +3 -1
- package/lib/common/gitProvider/gitlab.js +23 -1
- package/lib/common/gitProvider/gitlab.js.map +1 -1
- package/lib/common/gitProvider/index.d.ts +6 -0
- package/lib/common/utils/deploymentKeywordUtils.d.ts +31 -0
- package/lib/common/utils/deploymentKeywordUtils.js +47 -0
- package/lib/common/utils/deploymentKeywordUtils.js.map +1 -0
- package/lib/common/utils/index.d.ts +1 -0
- package/lib/common/utils/index.js +23 -1
- package/lib/common/utils/index.js.map +1 -1
- package/lib/common/utils/manualCherryPickUtils.d.ts +190 -0
- package/lib/common/utils/manualCherryPickUtils.js +442 -0
- package/lib/common/utils/manualCherryPickUtils.js.map +1 -0
- package/lib/common/utils/orgUtils.d.ts +4 -0
- package/lib/common/utils/orgUtils.js +20 -6
- package/lib/common/utils/orgUtils.js.map +1 -1
- package/lib/common/utils/promotionBranchUtils.d.ts +6 -0
- package/lib/common/utils/promotionBranchUtils.js +8 -0
- package/lib/common/utils/promotionBranchUtils.js.map +1 -1
- package/lib/common/utils/promotionCreateUtils.d.ts +33 -0
- package/lib/common/utils/promotionCreateUtils.js +54 -2
- package/lib/common/utils/promotionCreateUtils.js.map +1 -1
- package/lib/i18n/de.json +9 -0
- package/lib/i18n/en.json +9 -0
- package/lib/i18n/es.json +9 -0
- package/lib/i18n/fr.json +9 -0
- package/lib/i18n/it.json +9 -0
- package/lib/i18n/ja.json +9 -0
- package/lib/i18n/nl.json +9 -0
- package/lib/i18n/pl.json +9 -0
- package/lib/i18n/pt-BR.json +9 -0
- package/oclif.lock +129 -179
- package/oclif.manifest.json +3039 -3039
- package/package.json +14 -14
|
@@ -40,7 +40,7 @@ export default class SmartDeploy extends SfCommand<any> {
|
|
|
40
40
|
private handlePackages;
|
|
41
41
|
private initTestLevelAndTestClasses;
|
|
42
42
|
isDeltaAllowed(): Promise<boolean>;
|
|
43
|
-
isNoDelta(latestCommit: any):
|
|
43
|
+
isNoDelta(latestCommit: any): boolean;
|
|
44
44
|
isSmartDeploymentTestsAllowed(): Promise<boolean>;
|
|
45
|
-
isNoSmartDeploymentTests(latestCommit: any):
|
|
45
|
+
isNoSmartDeploymentTests(latestCommit: any): boolean;
|
|
46
46
|
}
|
|
@@ -18,6 +18,7 @@ import * as path from 'path';
|
|
|
18
18
|
import { MetadataUtils } from '../../../../common/metadata-utils/index.js';
|
|
19
19
|
import { createTempDir, getCurrentGitBranch, getLatestGitCommit, isCI, uxLog, uxLogTable, } from '../../../../common/utils/index.js';
|
|
20
20
|
import { CONSTANTS, getConfig, getEnvVar } from '../../../../config/index.js';
|
|
21
|
+
import { commitContainsDeploymentKeyword } from '../../../../common/utils/deploymentKeywordUtils.js';
|
|
21
22
|
import { smartDeploy, removePackageXmlContent, createEmptyPackageXml } from '../../../../common/utils/deployUtils.js';
|
|
22
23
|
import { extendPackageFileWithDependencies, appendPackageModifications } from '../../../../common/utils/deltaUtils.js';
|
|
23
24
|
import { isProductionOrg, promptOrgUsernameDefault, setConnectionVariables } from '../../../../common/utils/orgUtils.js';
|
|
@@ -140,7 +141,7 @@ Defaut list for **NOT_IMPACTING_METADATA_TYPES** (can be overridden with comma-s
|
|
|
140
141
|
- Translations
|
|
141
142
|
- WebLink
|
|
142
143
|
|
|
143
|
-
Note: if you want to disable Smart test classes for a PR, add **nosmart** in the text of the latest commit.
|
|
144
|
+
Note: if you want to disable Smart test classes for a PR, add **nosmart** in the text of the latest commit (any case: \`NOSMART\`, \`no_smart\`, \`no-smart\` and \`no smart\` also work).
|
|
144
145
|
|
|
145
146
|
### Custom Apex Test Classes (optional)
|
|
146
147
|
|
|
@@ -339,11 +340,13 @@ Notes:
|
|
|
339
340
|
|
|
340
341
|
### Pull Requests Custom Behaviors
|
|
341
342
|
|
|
342
|
-
If some words are found **in the Pull Request description**, special behaviors will be applied
|
|
343
|
+
If some words are found **in the Pull Request description**, special behaviors will be applied.
|
|
344
|
+
|
|
345
|
+
Keywords match in any case. NO_DELTA also accepts its words joined by \`-\`, a space or nothing (\`no_delta\`, \`No-Delta\`, \`no delta\` and \`nodelta\` all work). PURGE_FLOW_VERSIONS and DESTRUCTIVE_CHANGES_AFTER_DEPLOYMENT start destructive steps, so they keep their underscores (\`purge_flow_versions\` works, \`purge flow versions\` does not). A keyword inside a path or a branch name does not count, nor one inside an HTML comment (\`<!-- -->\`) or a fenced code block: a Pull Request template can list them without applying them, and the job log warns when a keyword is found only there.
|
|
343
346
|
|
|
344
347
|
| Word | Behavior |
|
|
345
348
|
| :--- | :--- |
|
|
346
|
-
| NO_DELTA | Even if delta deployments are activated, a deployment in mode **full** will be performed for this Pull Request |
|
|
349
|
+
| NO_DELTA | Even if delta deployments are activated, a deployment in mode **full** will be performed for this Pull Request. Also works in the latest commit message. |
|
|
347
350
|
| PURGE_FLOW_VERSIONS | After deployment, inactive and obsolete Flow Versions will be deleted (equivalent to command sf hardis:org:purge:flow)<br/>**Caution: This will also purge active Flow Interviews !** |
|
|
348
351
|
| DESTRUCTIVE_CHANGES_AFTER_DEPLOYMENT | If a file manifest/destructiveChanges.xml is found, it will be executed in a separate step, after the deployment of the main package |
|
|
349
352
|
| FLOW_DELETE_INTERVIEWS | Authorizes deleting the Flow Interviews that block the deletion of a Flow listed in destructive changes. The directive must be on its own line (or in a checked Markdown checkbox).<br/>**Caution: deleting Flow Interviews is irreversible and destroys in-flight process state !** |
|
|
@@ -971,7 +974,7 @@ If testlevel=RunRepositoryTests, can contain a regular expression to keep only c
|
|
|
971
974
|
}
|
|
972
975
|
const latestCommit = await getLatestGitCommit();
|
|
973
976
|
if (latestCommit && this.isNoDelta(latestCommit)) {
|
|
974
|
-
uxLog("warning", this, c.yellow(c.bold(
|
|
977
|
+
uxLog("warning", this, c.yellow(c.bold('[DeltaDeployment] ' + t('deltaDisabledByLatestCommitKeyword'))));
|
|
975
978
|
return false;
|
|
976
979
|
}
|
|
977
980
|
if (process.env?.ALWAYS_ENABLE_DELTA_DEPLOYMENT === 'true' || this.configInfo?.enableDeltaDeploymentBetweenMajorBranches === true) {
|
|
@@ -1009,14 +1012,13 @@ If testlevel=RunRepositoryTests, can contain a regular expression to keep only c
|
|
|
1009
1012
|
return true;
|
|
1010
1013
|
}
|
|
1011
1014
|
isNoDelta(latestCommit) {
|
|
1012
|
-
return latestCommit
|
|
1013
|
-
latestCommit?.body?.trim().includes('no delta') || latestCommit?.message?.trim().includes('no delta');
|
|
1015
|
+
return commitContainsDeploymentKeyword(latestCommit, 'noDelta');
|
|
1014
1016
|
}
|
|
1015
1017
|
async isSmartDeploymentTestsAllowed() {
|
|
1016
1018
|
if (process.env?.USE_SMART_DEPLOYMENT_TESTS === 'true' || this.configInfo?.useSmartDeploymentTests === true) {
|
|
1017
1019
|
const latestCommit = await getLatestGitCommit();
|
|
1018
1020
|
if (latestCommit && this.isNoSmartDeploymentTests(latestCommit)) {
|
|
1019
|
-
uxLog("warning", this, c.yellow(c.bold(
|
|
1021
|
+
uxLog("warning", this, c.yellow(c.bold('[SmartDeploymentTests] ' + t('smartDeploymentTestsDisabledByLatestCommitKeyword'))));
|
|
1020
1022
|
return false;
|
|
1021
1023
|
}
|
|
1022
1024
|
return true;
|
|
@@ -1024,8 +1026,7 @@ If testlevel=RunRepositoryTests, can contain a regular expression to keep only c
|
|
|
1024
1026
|
return false;
|
|
1025
1027
|
}
|
|
1026
1028
|
isNoSmartDeploymentTests(latestCommit) {
|
|
1027
|
-
return latestCommit
|
|
1028
|
-
latestCommit?.body?.trim().includes('no smart') || latestCommit?.message?.trim().includes('no smart');
|
|
1029
|
+
return commitContainsDeploymentKeyword(latestCommit, 'noSmart');
|
|
1029
1030
|
}
|
|
1030
1031
|
}
|
|
1031
1032
|
//# sourceMappingURL=smart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smart.js","sourceRoot":"","sources":["../../../../../src/commands/hardis/project/deploy/smart.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"smart.js","sourceRoot":"","sources":["../../../../../src/commands/hardis/project/deploy/smart.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,7 +25,7 @@ This is the only supported way to create a [promotion branch (Beta)](${CONSTANTS
|
|
|
25
25
|
- checks that \`enablePromotionBranches: true\` is set in the sfdx-hardis configuration;
|
|
26
26
|
- checks that \`allowedPromotionSteps\` declares the steps promotions may run on (ex: \`- source: uat\` / \`target: preprod\`), and keeps to them: only those source and target branches are offered, and naming another one fails;
|
|
27
27
|
- requires the [git provider connection](${CONSTANTS.DOC_URL_ROOT}/salesforce-ci-cd-setup-integrations-home/) (GitHub, GitLab, Bitbucket or Azure DevOps) and refuses to run without it: the carried Pull Requests are read from the provider, so the command behaves the same on every platform and every carried Pull Request gets its real title and author. From VS Code, the extension passes its own connection; from a terminal, an agent or CI, set the provider token as an environment variable or in a \`.env\` file at the repository root;
|
|
28
|
-
- lists the Pull Requests merged into the source branch and not yet promoted to the target branch, and lets you select the ones to carry (or takes them from \`--pull-requests\`). A Pull Request another promotion branch already carries to the same target is left out, unless \`--include-already-promoted\` is passed;
|
|
28
|
+
- lists the Pull Requests merged into the source branch and not yet promoted to the target branch, and lets you select the ones to carry (or takes them from \`--pull-requests\`). A Pull Request another promotion branch already carries to the same target is left out, unless \`--include-already-promoted\` is passed. With \`detectManualCherryPicks: true\`, so is a Pull Request that reached the target branch through a cherry-pick made by hand (see \`hardis:project:promotion:list-candidates\`);
|
|
29
29
|
- creates the branch from the target branch, named \`promotion/<source>/<target>/<YYYY-MM-DD>-<HHMM>\` (UTC, ex: \`promotion/uat/preprod/2026-09-06-1430\`), with \`-2\`, \`-3\`... added only when that name is already taken;
|
|
30
30
|
- cherry-picks the merge commit of each selected Pull Request, oldest first, with \`-x\` so each commit keeps a pointer to its origin;
|
|
31
31
|
- pushes the branch and creates the Pull Request to the target branch, with a description declaring the carried Pull Requests (\`${PROMOTION_PULL_REQUESTS_KEY}\`), their titles, authors, source branches and tickets.
|
|
@@ -25,6 +25,7 @@ The command:
|
|
|
25
25
|
- requires the [git provider connection](${CONSTANTS.DOC_URL_ROOT}/salesforce-ci-cd-setup-integrations-home/) (GitHub, GitLab, Bitbucket or Azure DevOps) and refuses to run without it, like \`hardis:project:promotion:create\`: the candidates are read from the provider, so the numbers listed are the ones \`create\` accepts;
|
|
26
26
|
- lists the Pull Requests merged into the source branch since its merge base with the target branch, leaving out the merges between major branches and the promotion branches themselves (they carry other people's work, they are not User Stories);
|
|
27
27
|
- marks the ones another promotion branch already carries to the same target branch. They are left out of the candidates unless \`--include-already-promoted\` is passed, and always reported in the \`alreadyPromoted\` result;
|
|
28
|
+
- with \`detectManualCherryPicks: true\`, also marks the ones that reached the target branch through a cherry-pick made by hand (\`alreadyPromotedBy.manualCherryPick\`). A story only part of whose commits were found stays a candidate (\`partiallyCherryPicked\`), and so does a story only matched by its commit title (\`probablyCherryPicked\`);
|
|
28
29
|
- names the promotion Pull Request already open between the two branches, if any. It is left untouched: \`hardis:project:promotion:create\` is what closes it, once its replacement exists.
|
|
29
30
|
|
|
30
31
|
With \`--json\`, the result holds \`candidates\` (Pull Request numbers, title, author, source branch, commit, date), \`alreadyPromoted\`, and \`openPromotions\`.
|
|
@@ -37,6 +38,7 @@ With \`--json\`, the result holds \`candidates\` (Pull Request numbers, title, a
|
|
|
37
38
|
- A promotion merged into the source branch is expanded into the User Stories its \`promotionPullRequests\` block declares, recursively, so a story promoted twice in a row keeps its number.
|
|
38
39
|
- A candidate can be a merge commit carrying several Pull Requests: they are listed together, because cherry-picking it carries all of them.
|
|
39
40
|
- Already-promoted detection reads the promotion Pull Requests of the target branch, bounded by the date of the oldest candidate.
|
|
41
|
+
- Manual cherry-pick detection (\`detectManualCherryPicks\`, off by default) reads the \`git cherry-pick -x\` trailers of the target branch (since the merge base, and before it as far as the oldest commit the candidates bring, so a back-merge does not hide a pick), and the commits each Pull Request merged into the target branch since the oldest candidate held (by merge date). A squash merge removes them from the history, not from the provider, which is asked for them; a Pull Request merged with a merge commit is read from the local history. Their trailers and their own SHAs name the candidates. A promotion that declares a story always wins over this detection.
|
|
40
42
|
</details>
|
|
41
43
|
|
|
42
44
|
### Agent Mode
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-candidates.js","sourceRoot":"","sources":["../../../../../src/commands/hardis/project/promotion/list-candidates.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,CAAC,MAAM,OAAO,CAAC;AACtB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,CAAC,EAAE,MAAM,kCAAkC,CAAC;AACrD,OAAO,EACL,8BAA8B,EAC9B,gCAAgC,EAChC,wBAAwB,EACxB,6BAA6B,EAC7B,uBAAuB,EACvB,8BAA8B,EAC9B,2BAA2B,EAC3B,8BAA8B,EAC9B,+BAA+B,EAC/B,kBAAkB,GACnB,MAAM,kDAAkD,CAAC;AAE1D,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;AAE7D,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,SAAc;IAC1D,MAAM,CAAC,KAAK,GAAG,oDAAoD,CAAC;IAEpE,MAAM,CAAC,WAAW,GAAG;;;;;4KAK8I,SAAS,CAAC,YAAY;;;;;;;2CAOvJ,SAAS,CAAC,YAAY
|
|
1
|
+
{"version":3,"file":"list-candidates.js","sourceRoot":"","sources":["../../../../../src/commands/hardis/project/promotion/list-candidates.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CiRunFilters, CommonCiRun, DashboardComment, DashboardFormat, DashboardRef, GitProviderRepositorySettings, GitProviderRoot, JobArtifact, JobArtifactsListing, PullRequestCommentRef, PullRequestCreateUrlResult } from "./gitProviderRoot.js";
|
|
2
|
-
import { CommonPullRequestInfo, CreatePullRequestRequest, CreatePullRequestResult, PullRequestMessageRequest, PullRequestMessageResult } from "./index.js";
|
|
2
|
+
import { CommonPullRequestInfo, CreatePullRequestRequest, CreatePullRequestResult, PullRequestCommitInfo, PullRequestMessageRequest, PullRequestMessageResult } from "./index.js";
|
|
3
3
|
export declare class AzureDevopsProvider extends GitProviderRoot {
|
|
4
4
|
private azureApi;
|
|
5
5
|
serverUrl: string;
|
|
@@ -45,6 +45,7 @@ export declare class AzureDevopsProvider extends GitProviderRoot {
|
|
|
45
45
|
pullRequestStatus?: "open" | "merged" | "abandoned";
|
|
46
46
|
targetBranch?: string;
|
|
47
47
|
minDate?: Date;
|
|
48
|
+
minDateOn?: 'created' | 'merged';
|
|
48
49
|
withoutComments?: boolean;
|
|
49
50
|
}): Promise<CommonPullRequestInfo[] | null>;
|
|
50
51
|
getBranchDeploymentCheckId(gitBranch: string): Promise<string | null>;
|
|
@@ -52,6 +53,13 @@ export declare class AzureDevopsProvider extends GitProviderRoot {
|
|
|
52
53
|
private isPullRequestMatchingCommit;
|
|
53
54
|
private getDeploymentIdFromPullRequest;
|
|
54
55
|
private getCommentTimestamp;
|
|
56
|
+
listPullRequestCommits(pullRequestId: number): Promise<PullRequestCommitInfo[] | null>;
|
|
57
|
+
/**
|
|
58
|
+
* Every commit of a Pull Request. getPullRequestCommits of azure-devops-node-api only returns
|
|
59
|
+
* the first page (about 100 commits) and exposes neither $top nor the continuation token, so
|
|
60
|
+
* the same REST resource is called with them. Falls back to the first page if that call fails.
|
|
61
|
+
*/
|
|
62
|
+
private listAllPullRequestCommitRefs;
|
|
55
63
|
getPullRequestById(pullRequestId: number): Promise<CommonPullRequestInfo | null>;
|
|
56
64
|
listPullRequestsInBranchSinceLastMerge(currentBranchName: string, targetBranchName: string, childBranchesNames: string[]): Promise<CommonPullRequestInfo[]>;
|
|
57
65
|
listPullRequestsInGoLive(branchName: string, childBranchesNames: string[], mergeCommitId: string): Promise<CommonPullRequestInfo[]>;
|
|
@@ -103,6 +111,9 @@ export declare class AzureDevopsProvider extends GitProviderRoot {
|
|
|
103
111
|
private static readonly PUSH_BUILD_REASONS;
|
|
104
112
|
private static readonly BUILDS_PAGE_SIZE;
|
|
105
113
|
private static readonly PULL_REQUESTS_PAGE_SIZE;
|
|
114
|
+
private static readonly PULL_REQUEST_COMMITS_LOCATION_ID;
|
|
115
|
+
private static readonly PULL_REQUEST_COMMITS_PAGE_SIZE;
|
|
116
|
+
private static readonly PULL_REQUEST_COMMITS_MAX_PAGES;
|
|
106
117
|
private listCompletedBuildsSince;
|
|
107
118
|
private getRepositoryGuid;
|
|
108
119
|
private readOwnJobOfBuilds;
|
|
@@ -8,7 +8,7 @@ import c from "chalk";
|
|
|
8
8
|
import fs from '../utils/fsUtils.js';
|
|
9
9
|
import { getCurrentGitBranch, getGitRepoUrl, git, isGitRepo, uxLog } from "../utils/index.js";
|
|
10
10
|
import * as path from "path";
|
|
11
|
-
import { CommentThreadStatus, PullRequestAsyncStatus, PullRequestStatus } from "azure-devops-node-api/interfaces/GitInterfaces.js";
|
|
11
|
+
import { CommentThreadStatus, PullRequestAsyncStatus, PullRequestStatus, PullRequestTimeRangeType } from "azure-devops-node-api/interfaces/GitInterfaces.js";
|
|
12
12
|
import { getBannerMarkdownAndLink, getEnvVar } from "../../config/index.js";
|
|
13
13
|
import { getPrCommentKind, getPrCommentKindFromMessageKey } from "./utils/prCommentNav.js";
|
|
14
14
|
import { SfError } from "@salesforce/core";
|
|
@@ -550,6 +550,11 @@ ${this.getPipelineVariablesConfig()}
|
|
|
550
550
|
}
|
|
551
551
|
if (filters.minDate) {
|
|
552
552
|
queryConstraint.minTime = filters.minDate;
|
|
553
|
+
// minTime applies to the creation date unless told otherwise: a completed Pull Request is
|
|
554
|
+
// closed when it is merged
|
|
555
|
+
if (filters.minDateOn === 'merged') {
|
|
556
|
+
queryConstraint.queryTimeRangeType = PullRequestTimeRangeType.Closed;
|
|
557
|
+
}
|
|
553
558
|
}
|
|
554
559
|
// Process request
|
|
555
560
|
uxLog("action", this, c.cyan(t('callingAzureApiToListPullRequests')));
|
|
@@ -683,6 +688,69 @@ ${this.getPipelineVariablesConfig()}
|
|
|
683
688
|
}
|
|
684
689
|
return latest;
|
|
685
690
|
}
|
|
691
|
+
async listPullRequestCommits(pullRequestId) {
|
|
692
|
+
if (!this.azureApi || !process.env.BUILD_REPOSITORY_ID) {
|
|
693
|
+
return null;
|
|
694
|
+
}
|
|
695
|
+
try {
|
|
696
|
+
const azureGitApi = await this.azureApi.getGitApi();
|
|
697
|
+
const repositoryId = process.env.BUILD_REPOSITORY_ID;
|
|
698
|
+
const project = process.env.SYSTEM_TEAMPROJECT;
|
|
699
|
+
// Azure DevOps keeps the commits of a squashed Pull Request, served by pages
|
|
700
|
+
const commits = await this.listAllPullRequestCommitRefs(azureGitApi, repositoryId, pullRequestId, project);
|
|
701
|
+
// The listing shortens long messages (commentTruncated), which only cuts the body: a
|
|
702
|
+
// cherry-pick trailer would then be lost, so those commits are read again in full
|
|
703
|
+
const results = await mapInAdaptiveBatches(commits, async (commit) => {
|
|
704
|
+
let message = commit.comment || '';
|
|
705
|
+
let parentShas = commit.parents || [];
|
|
706
|
+
if (commit.commentTruncated && commit.commitId) {
|
|
707
|
+
const full = await azureGitApi.getCommit(commit.commitId, repositoryId, project);
|
|
708
|
+
message = full?.comment || message;
|
|
709
|
+
parentShas = full?.parents || parentShas;
|
|
710
|
+
}
|
|
711
|
+
return { sha: commit.commitId || '', message, parentShas };
|
|
712
|
+
// A few at a time: the Pull Requests themselves are already read in parallel
|
|
713
|
+
}, { sizes: [8, 4, 1] });
|
|
714
|
+
return results.filter((commit) => !!commit && !!commit.sha);
|
|
715
|
+
}
|
|
716
|
+
catch (err) {
|
|
717
|
+
uxLog("warning", this, c.yellow('[Azure Integration] ' + t('gitProviderPullRequestCommitsNotListed', { number: pullRequestId, message: String(err) })));
|
|
718
|
+
return null;
|
|
719
|
+
}
|
|
720
|
+
}
|
|
721
|
+
/**
|
|
722
|
+
* Every commit of a Pull Request. getPullRequestCommits of azure-devops-node-api only returns
|
|
723
|
+
* the first page (about 100 commits) and exposes neither $top nor the continuation token, so
|
|
724
|
+
* the same REST resource is called with them. Falls back to the first page if that call fails.
|
|
725
|
+
*/
|
|
726
|
+
async listAllPullRequestCommitRefs(azureGitApi, repositoryId, pullRequestId, project) {
|
|
727
|
+
const pages = [];
|
|
728
|
+
try {
|
|
729
|
+
let continuationToken = undefined;
|
|
730
|
+
for (let page = 0; page < AzureDevopsProvider.PULL_REQUEST_COMMITS_MAX_PAGES; page++) {
|
|
731
|
+
const queryParameters = { '$top': AzureDevopsProvider.PULL_REQUEST_COMMITS_PAGE_SIZE };
|
|
732
|
+
if (continuationToken) {
|
|
733
|
+
queryParameters.continuationToken = continuationToken;
|
|
734
|
+
}
|
|
735
|
+
const versioning = await azureGitApi.vsoClient.getVersioningData("7.1", "git", AzureDevopsProvider.PULL_REQUEST_COMMITS_LOCATION_ID, { project, repositoryId, pullRequestId }, queryParameters);
|
|
736
|
+
const response = await azureGitApi.rest.get(versioning.requestUrl, azureGitApi.createRequestOptions('application/json', versioning.apiVersion));
|
|
737
|
+
const raw = response?.result;
|
|
738
|
+
const items = Array.isArray(raw) ? raw : Array.isArray(raw?.value) ? raw.value : [];
|
|
739
|
+
pages.push(...items);
|
|
740
|
+
const headers = response?.headers || {};
|
|
741
|
+
continuationToken = headers['x-ms-continuationtoken'] || headers['X-MS-ContinuationToken'] || undefined;
|
|
742
|
+
if (!continuationToken || items.length === 0) {
|
|
743
|
+
return pages;
|
|
744
|
+
}
|
|
745
|
+
}
|
|
746
|
+
uxLog("warning", this, c.yellow('[Azure Integration] ' + t('gitProviderPullRequestCommitsTruncated', { number: pullRequestId, count: pages.length })));
|
|
747
|
+
return pages;
|
|
748
|
+
}
|
|
749
|
+
catch (err) {
|
|
750
|
+
uxLog("other", this, `[Azure Integration] Paged listing of the commits of Pull Request ${pullRequestId} failed, first page only: ${String(err)}`);
|
|
751
|
+
return (await azureGitApi.getPullRequestCommits(repositoryId, pullRequestId, project)) || [];
|
|
752
|
+
}
|
|
753
|
+
}
|
|
686
754
|
async getPullRequestById(pullRequestId) {
|
|
687
755
|
try {
|
|
688
756
|
const azureGitApi = await this.azureApi.getGitApi();
|
|
@@ -1489,6 +1557,10 @@ ${getBannerMarkdownAndLink()}
|
|
|
1489
1557
|
static PUSH_BUILD_REASONS = [BuildReason.IndividualCI, BuildReason.BatchedCI, BuildReason.Manual];
|
|
1490
1558
|
static BUILDS_PAGE_SIZE = 1000;
|
|
1491
1559
|
static PULL_REQUESTS_PAGE_SIZE = 100;
|
|
1560
|
+
// Pull Request commits: the REST resource of getPullRequestCommits, read page by page
|
|
1561
|
+
static PULL_REQUEST_COMMITS_LOCATION_ID = "52823034-34a8-4576-922c-8d8b77e9e4c4";
|
|
1562
|
+
static PULL_REQUEST_COMMITS_PAGE_SIZE = 500;
|
|
1563
|
+
static PULL_REQUEST_COMMITS_MAX_PAGES = 20;
|
|
1492
1564
|
// Build API getBuilds: the completed builds of this repository finished since minDate, oldest
|
|
1493
1565
|
// first. azure-devops-node-api does not return the continuation token of the REST API (it comes
|
|
1494
1566
|
// in a response header the client drops), so a full page is followed by the same query starting
|