Skip to content

Commit 65587ca

Browse files
committed
Add logs
1 parent f2b64cb commit 65587ca

File tree

7 files changed

+59
-10
lines changed

7 files changed

+59
-10
lines changed

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@
2222
"@actions/artifact": "4.0.0",
2323
"@actions/core": "2.0.1",
2424
"@actions/github": "6.0.1",
25-
"nano-spawn": "2.0.0"
25+
"nano-spawn": "2.0.0",
26+
"pretty-ms": "9.3.0"
2627
},
2728
"devDependencies": {
2829
"@eslint/js": "9.39.1",
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import prettyMilliseconds from "pretty-ms";
12
import { runPrettier } from "./run-prettier.ts";
23
import * as logger from "./logger.ts";
34
import { installPrettier } from "./install-prettier.ts";
@@ -11,7 +12,6 @@ export async function executeCommand(commandString: string) {
1112
const directory = await createTemporaryDirectory();
1213

1314
// Install Prettier
14-
await logger.log("Installing Prettier...");
1515
const [alternativePrettier, originalPrettier] = await Promise.all(
1616
[original, alternative].map((version) =>
1717
installPrettier(version, { cwd: directory }),

src/index.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
import fs from "fs/promises";
21
import { inspect } from "node:util";
32
import * as core from "@actions/core";
43
import { IS_CI } from "./constants.ts";
54
import * as logger from "./logger.ts";
6-
import { executeCommand } from "./excute-command.ts";
5+
import { executeCommand } from "./execute-command.ts";
76
import { getReport } from "./report.ts";
87
import { getIssueComment } from "./get-issue-comment.ts";
98
import { uploadToArtifact } from "./artifact.ts";
@@ -47,7 +46,9 @@ async function run() {
4746
throw new Error("Please enter some commands.");
4847
}
4948

50-
await logger.log(`Received with command '${commandString}'.`)
49+
await logger.log(
50+
`Received with command '${commandString}', start execute...`,
51+
);
5152

5253
const result = await executeCommand(commandString);
5354

src/install-prettier.ts

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import path from "node:path";
22
import fs from "node:fs/promises";
33
import assert from "node:assert/strict";
44
import spawn from "nano-spawn";
5+
import prettyMilliseconds from "pretty-ms";
56
import {
67
type PrettierVersion,
78
PRETTIER_PACKAGE_TYPE_PULL_REQUEST,
@@ -14,6 +15,8 @@ export async function installPrettier(
1415
version: PrettierVersion,
1516
{ cwd }: { cwd: string },
1617
) {
18+
const startTime = process.hrtime.bigint();
19+
console.log(`Installing Prettier(${version.kind}) '${version.raw}' ...`);
1720
const directory = await clearDirectory(
1821
path.join(cwd, `${version.kind}-prettier`),
1922
);
@@ -30,8 +33,16 @@ export async function installPrettier(
3033
directory,
3134
"node_modules/prettier/bin/prettier.cjs",
3235
);
33-
await spawn(process.execPath, [prettierBinary, "--version"]);
3436

37+
const { stdout: installedVersion } = await spawn(process.execPath, [
38+
prettierBinary,
39+
"--version",
40+
]);
41+
assert.ok(typeof installedVersion === "string");
42+
43+
console.log(
44+
`Prettier(${version.kind}) '${version.raw}' installed in ${prettyMilliseconds((process.hrtime.bigint() - startTime) / 1_000_000n)}.`,
45+
);
3546
return {
3647
bin: prettierBinary,
3748
version: version,
@@ -114,10 +125,7 @@ async function getPrettierPackageName(
114125
const filename = await checkoutPullRequest(version.number, {
115126
cwd: directory,
116127
});
117-
await fs.rename(
118-
path.join(directory, filename),
119-
path.join(directory, filename),
120-
);
128+
await fs.rename(path.join(directory, filename), path.join(cwd, filename));
121129

122130
return `prettier@file:./${filename}`;
123131
}

src/repositories.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import prettyMilliseconds from "pretty-ms";
12
import spawn from "nano-spawn";
23
import path from "node:path";
34
import assert from "node:assert/strict";
@@ -79,6 +80,9 @@ export async function cloneRepository(repository: Repository) {
7980
// No op
8081
}
8182

83+
const startTime = process.hrtime.bigint();
84+
console.log(`Cloning repository '${repository.repository}' ...`);
85+
8286
await clearDirectory(directory);
8387
await spawn("git", ["init"], { cwd: directory });
8488
await spawn(
@@ -96,4 +100,8 @@ export async function cloneRepository(repository: Repository) {
96100
});
97101

98102
assert.equal(await getCommitHash(directory), commitHash);
103+
104+
console.log(
105+
`Repository '${repository.repository}' cloned in ${prettyMilliseconds((process.hrtime.bigint() - startTime) / 1_000_000n)}.`,
106+
);
99107
}

src/run-prettier.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import prettyMilliseconds from "pretty-ms";
12
import path from "node:path";
23
import spawn, { type SubprocessError } from "nano-spawn";
34
import { type Repository } from "./repositories.ts";
@@ -16,6 +17,11 @@ async function runPrettierWithVersion({
1617
repository: Repository;
1718
reset: () => Promise<void>;
1819
}) {
20+
const startTime = process.hrtime.bigint();
21+
console.log(
22+
`Running Prettier(${prettier.version.kind}) on repository '${repository.repository}' ...`,
23+
);
24+
1925
await reset();
2026

2127
const args = [prettier.bin, "--write", "--no-color", ...repository.glob];
@@ -44,6 +50,9 @@ async function runPrettierWithVersion({
4450

4551
await spawn("git", ["branch", prettier.version.kind], { cwd });
4652

53+
console.log(
54+
`Running Prettier(${prettier.version.kind}) on repository '${repository.repository}' finished in ${prettyMilliseconds((process.hrtime.bigint() - startTime) / 1_000_000n)}.`,
55+
);
4756
return commitHash;
4857
}
4958

@@ -69,6 +78,8 @@ export async function runPrettier(
6978
original: InstalledPrettier;
7079
},
7180
) {
81+
const startTime = process.hrtime.bigint();
82+
console.log(`Runing Prettier on repository '${repository.repository}' ...`);
7283
const directory = path.join(cwd, `repositories/${repository.directoryName}`);
7384

7485
const { reset } = await prepareRepository(directory, repository);
@@ -101,5 +112,8 @@ export async function runPrettier(
101112
{ cwd: directory },
102113
);
103114

115+
console.log(
116+
`Run Prettier on repository '${repository.repository}' finished in ${prettyMilliseconds((process.hrtime.bigint() - startTime) / 1_000_000n)}.`,
117+
);
104118
return stdout;
105119
}

yarn.lock

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3373,6 +3373,13 @@ __metadata:
33733373
languageName: node
33743374
linkType: hard
33753375

3376+
"parse-ms@npm:^4.0.0":
3377+
version: 4.0.0
3378+
resolution: "parse-ms@npm:4.0.0"
3379+
checksum: 10c0/a7900f4f1ebac24cbf5e9708c16fb2fd482517fad353aecd7aefb8c2ba2f85ce017913ccb8925d231770404780df46244ea6fec598b3bde6490882358b4d2d16
3380+
languageName: node
3381+
linkType: hard
3382+
33763383
"path-exists@npm:^4.0.0":
33773384
version: 4.0.0
33783385
resolution: "path-exists@npm:4.0.0"
@@ -3493,6 +3500,7 @@ __metadata:
34933500
npm-run-all: "npm:4.1.5"
34943501
outdent: "npm:0.8.0"
34953502
prettier: "npm:3.7.4"
3503+
pretty-ms: "npm:9.3.0"
34963504
typescript: "npm:5.9.3"
34973505
typescript-eslint: "npm:8.49.0"
34983506
vitest: "npm:4.0.15"
@@ -3508,6 +3516,15 @@ __metadata:
35083516
languageName: node
35093517
linkType: hard
35103518

3519+
"pretty-ms@npm:9.3.0":
3520+
version: 9.3.0
3521+
resolution: "pretty-ms@npm:9.3.0"
3522+
dependencies:
3523+
parse-ms: "npm:^4.0.0"
3524+
checksum: 10c0/555ea39a1de48a30601938aedb76d682871d33b6dee015281c37108921514b11e1792928b1648c2e5589acc73c8ef0fb5e585fb4c718e340a28b86799e90fb34
3525+
languageName: node
3526+
linkType: hard
3527+
35113528
"proc-log@npm:^5.0.0":
35123529
version: 5.0.0
35133530
resolution: "proc-log@npm:5.0.0"

0 commit comments

Comments
 (0)