@localheroai/cli 0.0.74 → 0.0.76-rc.2
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/dist/api/pull-request-imports.js +9 -1
- package/dist/api/pull-request-imports.js.map +1 -1
- package/dist/api/source-alignments.js +46 -0
- package/dist/api/source-alignments.js.map +1 -0
- package/dist/commands/check.js +1 -4
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/ci.js +4 -1
- package/dist/commands/ci.js.map +1 -1
- package/dist/commands/init.js +11 -3
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/translate.js +106 -39
- package/dist/commands/translate.js.map +1 -1
- package/dist/utils/aligned-import.js +105 -0
- package/dist/utils/aligned-import.js.map +1 -0
- package/dist/utils/aligned-values-on-disk.js +39 -0
- package/dist/utils/aligned-values-on-disk.js.map +1 -0
- package/dist/utils/alignment-candidates.js +75 -0
- package/dist/utils/alignment-candidates.js.map +1 -0
- package/dist/utils/ci-context.js +3 -0
- package/dist/utils/ci-context.js.map +1 -1
- package/dist/utils/git.js +21 -0
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/github-graphql.js +31 -14
- package/dist/utils/github-graphql.js.map +1 -1
- package/dist/utils/github.js +144 -46
- package/dist/utils/github.js.map +1 -1
- package/dist/utils/project-detection.js +75 -3
- package/dist/utils/project-detection.js.map +1 -1
- package/dist/utils/source-alignment.js +166 -0
- package/dist/utils/source-alignment.js.map +1 -0
- package/dist/utils/target-changes.js +10 -7
- package/dist/utils/target-changes.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* GitHub
|
|
2
|
+
* GitHub API helpers for creating signed commits.
|
|
3
3
|
*
|
|
4
4
|
* `createCommitOnBranch` is the canonical way to push commits via the GitHub
|
|
5
5
|
* App API and have them automatically signed by GitHub. It accepts a base SHA
|
|
6
6
|
* (`expectedHeadOid`) and atomically rejects the call if the branch has
|
|
7
|
-
* advanced
|
|
7
|
+
* advanced, without leaving orphaned tree/commit objects.
|
|
8
8
|
*
|
|
9
9
|
* Reference: https://docs.github.com/en/graphql/reference/mutations#createcommitonbranch
|
|
10
10
|
*/
|
|
@@ -25,6 +25,9 @@ export class StaleHeadError extends GitHubGraphQLError {
|
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
const GRAPHQL_ENDPOINT = 'https://api.github.com/graphql';
|
|
28
|
+
const REST_API_BASE = 'https://api.github.com';
|
|
29
|
+
// GitHub lists at most 300 changed files per comparison, so a full list may be cut short.
|
|
30
|
+
export const COMPARE_FILES_CAP = 300;
|
|
28
31
|
const defaultDeps = {
|
|
29
32
|
fetch: globalThis.fetch.bind(globalThis)
|
|
30
33
|
};
|
|
@@ -83,27 +86,41 @@ export async function createSignedCommit(input, deps = defaultDeps) {
|
|
|
83
86
|
}
|
|
84
87
|
return { commitSha: commit.oid, commitUrl: commit.url };
|
|
85
88
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
* `expectedHeadOid` precondition for `createCommitOnBranch`.
|
|
89
|
-
*/
|
|
90
|
-
export async function fetchBranchHead(repositoryNameWithOwner, branchName, token, deps = defaultDeps) {
|
|
91
|
-
const refUrl = `https://api.github.com/repos/${repositoryNameWithOwner}/git/ref/heads/${encodeURIComponent(branchName)}`;
|
|
92
|
-
const refResponse = await deps.fetch(refUrl, {
|
|
89
|
+
async function getRestJson(url, token, deps) {
|
|
90
|
+
const response = await deps.fetch(url, {
|
|
93
91
|
headers: {
|
|
94
92
|
Authorization: `Bearer ${token}`,
|
|
95
93
|
Accept: 'application/vnd.github+json',
|
|
96
94
|
'User-Agent': 'localhero-cli'
|
|
97
95
|
}
|
|
98
96
|
});
|
|
99
|
-
if (!
|
|
100
|
-
throw new GitHubGraphQLError(`
|
|
97
|
+
if (!response.ok) {
|
|
98
|
+
throw new GitHubGraphQLError(`GitHub API request failed: ${response.status} ${response.statusText}`);
|
|
101
99
|
}
|
|
102
|
-
|
|
103
|
-
|
|
100
|
+
return (await response.json());
|
|
101
|
+
}
|
|
102
|
+
export async function fetchBranchHead(repositoryNameWithOwner, branchName, token, deps = defaultDeps) {
|
|
103
|
+
const encodedBranch = branchName.split('/').map(encodeURIComponent).join('/');
|
|
104
|
+
const body = await getRestJson(`${REST_API_BASE}/repos/${repositoryNameWithOwner}/git/ref/heads/${encodedBranch}`, token, deps);
|
|
105
|
+
const sha = body.object?.sha;
|
|
104
106
|
if (!sha) {
|
|
105
107
|
throw new GitHubGraphQLError(`Branch ${branchName} has no head SHA`);
|
|
106
108
|
}
|
|
107
|
-
return
|
|
109
|
+
return sha;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Paths changed between `base` and `head`, where `head` descends from `base`.
|
|
113
|
+
* Renames report both the old and the new path. Returns null when GitHub can't
|
|
114
|
+
* give a complete answer: `head` is not strictly ahead (force-push, divergence),
|
|
115
|
+
* or the files or commits list was cut short.
|
|
116
|
+
*/
|
|
117
|
+
export async function fetchChangedPaths(repositoryNameWithOwner, base, head, token, deps = defaultDeps) {
|
|
118
|
+
const body = await getRestJson(`${REST_API_BASE}/repos/${repositoryNameWithOwner}/compare/${base}...${head}`, token, deps);
|
|
119
|
+
const { status, total_commits: totalCommits, commits, files } = body;
|
|
120
|
+
if (status !== 'ahead' || !Array.isArray(files) || !Array.isArray(commits))
|
|
121
|
+
return null;
|
|
122
|
+
if (files.length >= COMPARE_FILES_CAP || totalCommits !== commits.length)
|
|
123
|
+
return null;
|
|
124
|
+
return files.flatMap(file => [file.filename, file.previous_filename].filter((p) => Boolean(p)));
|
|
108
125
|
}
|
|
109
126
|
//# sourceMappingURL=github-graphql.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-graphql.js","sourceRoot":"","sources":["../../src/utils/github-graphql.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA8BH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IACE;IAA+B;IAA5E,YAAY,OAAe,EAAkB,IAAa,EAAkB,MAAgB;QAC1F,KAAK,CAAC,OAAO,CAAC,CAAC;QAD4B,SAAI,GAAJ,IAAI,CAAS;QAAkB,WAAM,GAAN,MAAM,CAAU;QAE1F,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,kBAAkB;IACpD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED,MAAM,gBAAgB,GAAG,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"github-graphql.js","sourceRoot":"","sources":["../../src/utils/github-graphql.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/github.js
CHANGED
|
@@ -3,7 +3,22 @@ import { promises as fs, existsSync } from 'fs';
|
|
|
3
3
|
import path from 'path';
|
|
4
4
|
import { fetchGitHubInstallationToken } from '../api/github.js';
|
|
5
5
|
import { configService, PROJECT_CONFIG_FILE } from './config.js';
|
|
6
|
-
import { createSignedCommit, fetchBranchHead, StaleHeadError } from './github-graphql.js';
|
|
6
|
+
import { createSignedCommit, fetchBranchHead, fetchChangedPaths, StaleHeadError } from './github-graphql.js';
|
|
7
|
+
export const MISSING_TOKEN_ERROR = 'GITHUB_TOKEN is not set';
|
|
8
|
+
export const MISSING_BRANCH_ERROR = 'Could not determine branch name from GITHUB_HEAD_REF';
|
|
9
|
+
// Only an overlapping push is sure to start a new run: it touched locale files,
|
|
10
|
+
// which every generated `paths:` filter matches.
|
|
11
|
+
const TRANSLATE_SKIP_NOTICES = {
|
|
12
|
+
'skipped-overlap': 'Branch changed during the run and touched these translation files; skipping commit. The new push triggers a fresh run.',
|
|
13
|
+
'skipped-uncertain': 'Branch changed during the run; skipping commit to avoid overwriting newer work. Re-run the workflow to commit the translations.'
|
|
14
|
+
};
|
|
15
|
+
// A push never re-runs a sync, whatever it touched.
|
|
16
|
+
const SYNC_SKIP_NOTICES = {
|
|
17
|
+
'skipped-overlap': 'Branch changed during the sync and touched these translation files; skipping commit. Sync again from Localhero to commit the translations.',
|
|
18
|
+
'skipped-uncertain': 'Branch changed during the sync; skipping commit to avoid overwriting newer work. Sync again from Localhero to commit the translations.'
|
|
19
|
+
};
|
|
20
|
+
// A tip that keeps moving is a busy branch; stop chasing it and let a later run commit.
|
|
21
|
+
const MAX_COMMITS_ON_NEWER_TIP = 2;
|
|
7
22
|
const defaultDependencies = {
|
|
8
23
|
exec: (cmd, options) => execSync(cmd, options),
|
|
9
24
|
fs: { ...fs, existsSync },
|
|
@@ -13,7 +28,8 @@ const defaultDependencies = {
|
|
|
13
28
|
fetchGitHubInstallationToken,
|
|
14
29
|
configService,
|
|
15
30
|
createSignedCommit,
|
|
16
|
-
fetchBranchHead
|
|
31
|
+
fetchBranchHead,
|
|
32
|
+
fetchChangedPaths
|
|
17
33
|
};
|
|
18
34
|
export const DJANGO_PYTHON_VERSION = '3.12';
|
|
19
35
|
// Django expects locale names on disk (pt_BR), while config stores language codes
|
|
@@ -67,21 +83,22 @@ export const PHOENIX_OTP_VERSION = '28';
|
|
|
67
83
|
// workflow has to extract them first. Without this a PR that only touches source
|
|
68
84
|
// code runs green and translates nothing. Extraction is skipped on sync and dispatch
|
|
69
85
|
// runs, where the Action writes reviewed translations back and extraction would
|
|
70
|
-
// fight it.
|
|
86
|
+
// fight it, and on our own translation commits, which need none.
|
|
87
|
+
const EXTRACT_CONDITION = "github.event_name == 'pull_request' && github.actor != 'localhero-ai[bot]'";
|
|
71
88
|
// actions/setup-python provides python and pip, nothing else, so a project using
|
|
72
89
|
// uv, poetry or pipenv needs that tool installed before the install command runs.
|
|
73
90
|
const PYTHON_TOOL_SETUP = {
|
|
74
91
|
uv: ` - uses: astral-sh/setup-uv@v5
|
|
75
|
-
if:
|
|
92
|
+
if: ${EXTRACT_CONDITION}
|
|
76
93
|
|
|
77
94
|
`,
|
|
78
95
|
poetry: ` - name: Install poetry
|
|
79
|
-
if:
|
|
96
|
+
if: ${EXTRACT_CONDITION}
|
|
80
97
|
run: pipx install poetry
|
|
81
98
|
|
|
82
99
|
`,
|
|
83
100
|
pipenv: ` - name: Install pipenv
|
|
84
|
-
if:
|
|
101
|
+
if: ${EXTRACT_CONDITION}
|
|
85
102
|
run: pipx install pipenv
|
|
86
103
|
|
|
87
104
|
`
|
|
@@ -92,12 +109,12 @@ function buildPythonToolSetup(pythonInstall) {
|
|
|
92
109
|
}
|
|
93
110
|
function buildDjangoExtractStep(locales, pythonInstall = PIP_INSTALL) {
|
|
94
111
|
return ` - uses: actions/setup-python@v5
|
|
95
|
-
if:
|
|
112
|
+
if: ${EXTRACT_CONDITION}
|
|
96
113
|
with:
|
|
97
114
|
python-version: "${DJANGO_PYTHON_VERSION}"
|
|
98
115
|
|
|
99
116
|
${buildPythonToolSetup(pythonInstall)} - name: Extract messages
|
|
100
|
-
if:
|
|
117
|
+
if: ${EXTRACT_CONDITION}
|
|
101
118
|
run: |
|
|
102
119
|
sudo apt-get install -y -qq gettext
|
|
103
120
|
${pythonInstall}
|
|
@@ -116,13 +133,13 @@ function buildPhoenixExtractStep(workingDirectory) {
|
|
|
116
133
|
? `\n working-directory: ${workingDirectory}`
|
|
117
134
|
: '';
|
|
118
135
|
return ` - uses: erlef/setup-beam@v1
|
|
119
|
-
if:
|
|
136
|
+
if: ${EXTRACT_CONDITION}
|
|
120
137
|
with:
|
|
121
138
|
elixir-version: "${PHOENIX_ELIXIR_VERSION}"
|
|
122
139
|
otp-version: "${PHOENIX_OTP_VERSION}"
|
|
123
140
|
|
|
124
141
|
- name: Extract messages
|
|
125
|
-
if:
|
|
142
|
+
if: ${EXTRACT_CONDITION}${workingDirectoryLine}
|
|
126
143
|
run: |
|
|
127
144
|
mix deps.get
|
|
128
145
|
mix gettext.extract --merge
|
|
@@ -223,6 +240,7 @@ jobs:
|
|
|
223
240
|
with:
|
|
224
241
|
ref: \${{ github.event.client_payload.branch || github.head_ref || github.ref_name }}
|
|
225
242
|
fetch-depth: 0
|
|
243
|
+
persist-credentials: false
|
|
226
244
|
|
|
227
245
|
${buildExtractStep(options)} - name: Translate
|
|
228
246
|
uses: localheroai/localhero-action@v1
|
|
@@ -259,7 +277,7 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
259
277
|
getBranchName() {
|
|
260
278
|
const branchName = this.deps.env.GITHUB_HEAD_REF;
|
|
261
279
|
if (!branchName) {
|
|
262
|
-
throw new Error(
|
|
280
|
+
throw new Error(MISSING_BRANCH_ERROR);
|
|
263
281
|
}
|
|
264
282
|
return branchName;
|
|
265
283
|
},
|
|
@@ -363,7 +381,7 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
363
381
|
const { token: appToken, errorCode } = await this.fetchActionToken();
|
|
364
382
|
const finalToken = appToken || env.GITHUB_TOKEN;
|
|
365
383
|
if (!finalToken) {
|
|
366
|
-
throw new Error(
|
|
384
|
+
throw new Error(MISSING_TOKEN_ERROR);
|
|
367
385
|
}
|
|
368
386
|
if (appToken) {
|
|
369
387
|
log.log('✓ Using GitHub App token');
|
|
@@ -403,7 +421,7 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
403
421
|
async autoCommitSyncChanges(modifiedFiles, syncSummary, options) {
|
|
404
422
|
const { exec, console: log } = this.deps;
|
|
405
423
|
if (!this.isGitHubAction())
|
|
406
|
-
return;
|
|
424
|
+
return 'no-changes';
|
|
407
425
|
log.log('\nCommitting sync changes...');
|
|
408
426
|
try {
|
|
409
427
|
const branchName = options?.branchName || this.getBranchName();
|
|
@@ -417,11 +435,14 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
417
435
|
});
|
|
418
436
|
if (result === 'no-changes') {
|
|
419
437
|
log.log('No changes to commit - translations already up to date.');
|
|
438
|
+
return result;
|
|
420
439
|
}
|
|
421
|
-
|
|
440
|
+
if (result === 'new') {
|
|
422
441
|
log.log('✓ Signed commit created and pushed to GitHub\n');
|
|
442
|
+
return result;
|
|
423
443
|
}
|
|
424
|
-
|
|
444
|
+
log.log(`::warning::${SYNC_SKIP_NOTICES[result]}`);
|
|
445
|
+
return 'skipped';
|
|
425
446
|
}
|
|
426
447
|
this.configureGitUser();
|
|
427
448
|
for (const filePath of modifiedFiles) {
|
|
@@ -430,7 +451,7 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
430
451
|
exec(`git add ${PROJECT_CONFIG_FILE}`, { stdio: 'inherit' });
|
|
431
452
|
if (!this.hasStagedChanges()) {
|
|
432
453
|
log.log('No changes to commit - translations already up to date.');
|
|
433
|
-
return;
|
|
454
|
+
return 'no-changes';
|
|
434
455
|
}
|
|
435
456
|
const canAmend = this.canAmendLastCommit(true);
|
|
436
457
|
this.commit(commitMessage, canAmend);
|
|
@@ -442,6 +463,7 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
442
463
|
else {
|
|
443
464
|
log.log('✓ New commit created and pushed to GitHub\n');
|
|
444
465
|
}
|
|
466
|
+
return 'new';
|
|
445
467
|
}
|
|
446
468
|
catch (error) {
|
|
447
469
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
@@ -455,12 +477,20 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
455
477
|
*/
|
|
456
478
|
buildTranslateCommitMessage(translationSummary) {
|
|
457
479
|
let commitMessage = 'Update translations';
|
|
480
|
+
const summaryLines = [];
|
|
458
481
|
if (translationSummary && translationSummary.keysTranslated > 0) {
|
|
459
|
-
const { keysTranslated, languages
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
482
|
+
const { keysTranslated, languages } = translationSummary;
|
|
483
|
+
summaryLines.push(`${keysTranslated} ${keysTranslated > 1 ? 'keys' : 'key'} in ${languages.join(', ')}`);
|
|
484
|
+
}
|
|
485
|
+
const keysAligned = translationSummary?.keysAligned ?? 0;
|
|
486
|
+
if (keysAligned > 0) {
|
|
487
|
+
const alignedLanguages = (translationSummary?.alignedLanguages ?? []).join(', ');
|
|
488
|
+
summaryLines.push(`Aligned ${keysAligned} ${keysAligned > 1 ? 'keys' : 'key'} in ${alignedLanguages} to reworded source texts`);
|
|
489
|
+
}
|
|
490
|
+
if (summaryLines.length > 0) {
|
|
491
|
+
commitMessage += `\n\n${summaryLines.join('\n')}`;
|
|
492
|
+
if (translationSummary?.viewUrl) {
|
|
493
|
+
commitMessage += `\n\n${translationSummary.viewUrl}`;
|
|
464
494
|
}
|
|
465
495
|
}
|
|
466
496
|
const actor = this.deps.env.GITHUB_ACTOR;
|
|
@@ -494,7 +524,7 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
494
524
|
async autoCommitChanges(filesPath, translationSummary) {
|
|
495
525
|
const { exec, console: log } = this.deps;
|
|
496
526
|
if (!this.isGitHubAction())
|
|
497
|
-
return;
|
|
527
|
+
return 'no-changes';
|
|
498
528
|
log.log('Running in GitHub Actions. Committing changes...');
|
|
499
529
|
try {
|
|
500
530
|
const branchName = this.getBranchName();
|
|
@@ -508,22 +538,26 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
508
538
|
});
|
|
509
539
|
if (result === 'no-changes') {
|
|
510
540
|
log.log('No changes to commit.');
|
|
541
|
+
return result;
|
|
511
542
|
}
|
|
512
|
-
|
|
543
|
+
if (result === 'new') {
|
|
513
544
|
log.log('Signed commit pushed to GitHub.');
|
|
545
|
+
return result;
|
|
514
546
|
}
|
|
515
|
-
|
|
547
|
+
log.log(`::warning::${TRANSLATE_SKIP_NOTICES[result]}`);
|
|
548
|
+
return 'skipped';
|
|
516
549
|
}
|
|
517
550
|
this.configureGitUser();
|
|
518
551
|
exec(`git add ${filesPath}`, { stdio: 'inherit' });
|
|
519
552
|
if (!this.hasStagedChanges()) {
|
|
520
553
|
log.log('No changes to commit.');
|
|
521
|
-
return;
|
|
554
|
+
return 'no-changes';
|
|
522
555
|
}
|
|
523
556
|
this.commit(commitMessage);
|
|
524
557
|
const token = await this.getTokenForPush();
|
|
525
558
|
await this.pushWithRetry(branchName, token);
|
|
526
559
|
log.log('Changes committed and pushed successfully.');
|
|
560
|
+
return 'new';
|
|
527
561
|
}
|
|
528
562
|
catch (error) {
|
|
529
563
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
@@ -536,16 +570,21 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
536
570
|
* mutation. Produces signed commits attributed to the LocalHero App. Works
|
|
537
571
|
* with repos that enforce `required_signatures` rulesets.
|
|
538
572
|
*
|
|
539
|
-
* The new commit is stacked on
|
|
540
|
-
*
|
|
541
|
-
*
|
|
542
|
-
*
|
|
573
|
+
* The new commit is stacked on the checkout's HEAD, which is what the files
|
|
574
|
+
* were generated from. The mutation sends whole-file contents, so if the
|
|
575
|
+
* branch moved during the run and the newer commits changed any of our files,
|
|
576
|
+
* committing on the newer tip would revert them. GitHub rejects the stale
|
|
577
|
+
* `expectedHeadOid`; we then commit on the newer tip only when the newer
|
|
578
|
+
* commits left all of our files alone, and otherwise skip and let a later run
|
|
579
|
+
* redo the work. The mutation has no amend primitive, so sync PRs keep the
|
|
580
|
+
* bot's sync trigger commit as well.
|
|
543
581
|
*
|
|
544
|
-
* Returns 'no-changes' if
|
|
545
|
-
*
|
|
582
|
+
* Returns 'no-changes' if there are no files to commit, 'skipped-overlap'
|
|
583
|
+
* if a newer commit touched our files, 'skipped-uncertain' if that couldn't
|
|
584
|
+
* be ruled out, otherwise 'new'.
|
|
546
585
|
*/
|
|
547
586
|
async apiCommitAndPush(params) {
|
|
548
|
-
const {
|
|
587
|
+
const { exec, env } = this.deps;
|
|
549
588
|
const repository = env.GITHUB_REPOSITORY;
|
|
550
589
|
if (!repository) {
|
|
551
590
|
throw new Error('GITHUB_REPOSITORY is not set');
|
|
@@ -555,32 +594,91 @@ ${buildExtractStep(options)} - name: Translate
|
|
|
555
594
|
return 'no-changes';
|
|
556
595
|
}
|
|
557
596
|
const token = await this.getTokenForPush();
|
|
558
|
-
const
|
|
559
|
-
|
|
560
|
-
|
|
597
|
+
const checkoutHead = exec('git rev-parse HEAD', { stdio: 'pipe' }).toString().trim();
|
|
598
|
+
await this.warnIfCheckoutIsNotPullRequestHead(checkoutHead);
|
|
599
|
+
let expectedHeadOid = checkoutHead;
|
|
600
|
+
for (let commitsOnNewerTip = 0;; commitsOnNewerTip++) {
|
|
561
601
|
try {
|
|
562
|
-
const head = await this.deps.fetchBranchHead(repository, params.branchName, token);
|
|
563
|
-
const headlineAndBody = this.splitCommitMessage(params.message);
|
|
564
602
|
await this.deps.createSignedCommit({
|
|
565
603
|
repositoryNameWithOwner: repository,
|
|
566
604
|
branchName: params.branchName,
|
|
567
|
-
expectedHeadOid
|
|
568
|
-
message:
|
|
605
|
+
expectedHeadOid,
|
|
606
|
+
message: this.splitCommitMessage(params.message),
|
|
569
607
|
fileChanges: { additions },
|
|
570
608
|
token
|
|
571
609
|
});
|
|
572
610
|
return 'new';
|
|
573
611
|
}
|
|
574
612
|
catch (error) {
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
613
|
+
if (!(error instanceof StaleHeadError))
|
|
614
|
+
throw error;
|
|
615
|
+
}
|
|
616
|
+
if (commitsOnNewerTip === MAX_COMMITS_ON_NEWER_TIP)
|
|
617
|
+
return 'skipped-uncertain';
|
|
618
|
+
const check = await this.findTipSafeToCommitOn({
|
|
619
|
+
repository,
|
|
620
|
+
branchName: params.branchName,
|
|
621
|
+
checkoutHead,
|
|
622
|
+
paths: additions.map(addition => addition.path),
|
|
623
|
+
token
|
|
624
|
+
});
|
|
625
|
+
if ('skipped' in check)
|
|
626
|
+
return check.skipped;
|
|
627
|
+
expectedHeadOid = check.tip;
|
|
628
|
+
}
|
|
629
|
+
},
|
|
630
|
+
/**
|
|
631
|
+
* The branch's current tip if every commit since the checkout left `paths`
|
|
632
|
+
* untouched, so our whole-file contents are still right on top of it.
|
|
633
|
+
* Otherwise why it isn't safe: a newer commit touched one of them, or that
|
|
634
|
+
* can't be ruled out.
|
|
635
|
+
*/
|
|
636
|
+
async findTipSafeToCommitOn(params) {
|
|
637
|
+
const { console: log } = this.deps;
|
|
638
|
+
const { repository, checkoutHead, token } = params;
|
|
639
|
+
try {
|
|
640
|
+
const tip = await this.deps.fetchBranchHead(repository, params.branchName, token);
|
|
641
|
+
const changedPaths = await this.deps.fetchChangedPaths(repository, checkoutHead, tip, token);
|
|
642
|
+
if (!changedPaths) {
|
|
643
|
+
log.log(`Could not get a complete list of the files changed since ${checkoutHead.slice(0, 7)}.`);
|
|
644
|
+
return { skipped: 'skipped-uncertain' };
|
|
581
645
|
}
|
|
646
|
+
const changed = new Set(changedPaths);
|
|
647
|
+
const overlap = params.paths.find(filePath => changed.has(filePath));
|
|
648
|
+
if (overlap) {
|
|
649
|
+
log.log(`Newer commits on the branch changed ${overlap}.`);
|
|
650
|
+
return { skipped: 'skipped-overlap' };
|
|
651
|
+
}
|
|
652
|
+
return { tip };
|
|
653
|
+
}
|
|
654
|
+
catch (error) {
|
|
655
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
656
|
+
log.log(`Could not check the newer commits on the branch: ${message}`);
|
|
657
|
+
return { skipped: 'skipped-uncertain' };
|
|
658
|
+
}
|
|
659
|
+
},
|
|
660
|
+
/**
|
|
661
|
+
* The default actions/checkout on pull_request checks out a merge commit,
|
|
662
|
+
* which is never the branch tip, so every signed commit would be skipped.
|
|
663
|
+
*/
|
|
664
|
+
async warnIfCheckoutIsNotPullRequestHead(checkoutHead) {
|
|
665
|
+
const { fs, env, console: log } = this.deps;
|
|
666
|
+
const eventPath = env.GITHUB_EVENT_PATH;
|
|
667
|
+
if (!eventPath || !fs.existsSync(eventPath))
|
|
668
|
+
return;
|
|
669
|
+
let pullRequestHead;
|
|
670
|
+
try {
|
|
671
|
+
const event = JSON.parse((await fs.readFile(eventPath, 'utf8')).toString());
|
|
672
|
+
pullRequestHead = event?.pull_request?.head?.sha;
|
|
582
673
|
}
|
|
583
|
-
|
|
674
|
+
catch {
|
|
675
|
+
return;
|
|
676
|
+
}
|
|
677
|
+
if (typeof pullRequestHead !== 'string' || pullRequestHead === checkoutHead)
|
|
678
|
+
return;
|
|
679
|
+
log.log(`::warning::Signed commits need the pull request branch checked out. This run checked out ${checkoutHead.slice(0, 7)}, ` +
|
|
680
|
+
`not the pull request head ${pullRequestHead.slice(0, 7)}, which is likely why the commit gets skipped. ` +
|
|
681
|
+
'Set `ref: ${{ github.head_ref }}` on actions/checkout.');
|
|
584
682
|
},
|
|
585
683
|
async readFilesAsAdditions(filePaths) {
|
|
586
684
|
const { fs } = this.deps;
|
package/dist/utils/github.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"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"}
|