Skip to content

Commit 59ce839

Browse files
author
Frédéric Biesse
committed
fix: lint
1 parent d9800d6 commit 59ce839

File tree

6 files changed

+192
-192
lines changed

6 files changed

+192
-192
lines changed

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55
"main": "dist/index.js",
66
"scripts": {
77
"build": "ncc build src/main.ts -o dist",
8-
"lint": "eslint src/"
8+
"lint": "eslint src/",
9+
"lint-fix": "eslint src/ --fix"
910
},
1011
"keywords": [
1112
"github",

src/debug.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ export function debug(title: string, content: any) {
44
if (core.isDebug()) {
55
core.info(`::group::${title}`)
66
try {
7-
core.debug(JSON.stringify(content, null, 3));
7+
core.debug(JSON.stringify(content, null, 3))
88
} catch(e) {
99
core.debug(`Failed to serialize object, trying toString. Cause: ${e}`)
10-
core.debug(content?.toString());
10+
core.debug(content?.toString())
1111
}
1212
core.info('::endgroup::')
1313
}

src/main.ts

Lines changed: 44 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -6,67 +6,66 @@
66
// ----------------------------------------------------------------------------
77

88
import * as core from '@actions/core'
9-
import * as github from '@actions/github'
10-
import { formatDuration, getArgs, isTimedOut, sleep } from './utils';
11-
import { WorkflowHandler, WorkflowRunConclusion, WorkflowRunResult, WorkflowRunStatus } from './workflow-handler';
12-
import { handleWorkflowLogsPerJob } from './workflow-logs-handler';
9+
import { formatDuration, getArgs, isTimedOut, sleep } from './utils'
10+
import { WorkflowHandler, WorkflowRunConclusion, WorkflowRunResult, WorkflowRunStatus } from './workflow-handler'
11+
import { handleWorkflowLogsPerJob } from './workflow-logs-handler'
1312

1413

1514

1615
async function getFollowUrl(workflowHandler: WorkflowHandler, interval: number, timeout: number) {
17-
const start = Date.now();
18-
let url;
16+
const start = Date.now()
17+
let url
1918
do {
20-
await sleep(interval);
19+
await sleep(interval)
2120
try {
22-
const result = await workflowHandler.getWorkflowRunStatus();
23-
url = result.url;
21+
const result = await workflowHandler.getWorkflowRunStatus()
22+
url = result.url
2423
} catch(e: any) {
25-
core.debug(`Failed to get workflow url: ${e.message}`);
24+
core.debug(`Failed to get workflow url: ${e.message}`)
2625
}
27-
} while (!url && !isTimedOut(start, timeout));
28-
return url;
26+
} while (!url && !isTimedOut(start, timeout))
27+
return url
2928
}
3029

3130
async function waitForCompletionOrTimeout(workflowHandler: WorkflowHandler, checkStatusInterval: number, waitForCompletionTimeout: number) {
32-
const start = Date.now();
33-
let status;
34-
let result;
31+
const start = Date.now()
32+
let status
33+
let result
3534
do {
36-
await sleep(checkStatusInterval);
35+
await sleep(checkStatusInterval)
3736
try {
38-
result = await workflowHandler.getWorkflowRunStatus();
39-
status = result.status;
37+
result = await workflowHandler.getWorkflowRunStatus()
38+
status = result.status
4039
core.debug(`Worflow is running for ${formatDuration(Date.now() - start)}. Current status=${status}`)
4140
} catch(e: any) {
42-
core.warning(`Failed to get workflow status: ${e.message}`);
41+
core.warning(`Failed to get workflow status: ${e.message}`)
4342
}
44-
} while (status !== WorkflowRunStatus.COMPLETED && !isTimedOut(start, waitForCompletionTimeout));
43+
} while (status !== WorkflowRunStatus.COMPLETED && !isTimedOut(start, waitForCompletionTimeout))
4544
return { result, start }
4645
}
4746

4847
function computeConclusion(start: number, waitForCompletionTimeout: number, result?: WorkflowRunResult) {
4948
if (isTimedOut(start, waitForCompletionTimeout)) {
50-
core.info(`Workflow wait timed out`);
51-
core.setOutput('workflow-conclusion', WorkflowRunConclusion.TIMED_OUT);
52-
throw new Error('Workflow run has failed due to timeout');
49+
core.info('Workflow wait timed out')
50+
core.setOutput('workflow-conclusion', WorkflowRunConclusion.TIMED_OUT)
51+
throw new Error('Workflow run has failed due to timeout')
5352
}
5453

55-
core.info(`Workflow completed with conclusion=${result?.conclusion}`);
56-
const conclusion = result?.conclusion;
57-
core.setOutput('workflow-conclusion', conclusion);
54+
core.info(`Workflow completed with conclusion=${result?.conclusion}`)
55+
const conclusion = result?.conclusion
56+
core.setOutput('workflow-conclusion', conclusion)
5857

59-
if (conclusion === WorkflowRunConclusion.FAILURE) throw new Error('Workflow run has failed');
60-
if (conclusion === WorkflowRunConclusion.CANCELLED) throw new Error('Workflow run was cancelled');
61-
if (conclusion === WorkflowRunConclusion.TIMED_OUT) throw new Error('Workflow run has failed due to timeout');
58+
if (conclusion === WorkflowRunConclusion.FAILURE) throw new Error('Workflow run has failed')
59+
if (conclusion === WorkflowRunConclusion.CANCELLED) throw new Error('Workflow run was cancelled')
60+
if (conclusion === WorkflowRunConclusion.TIMED_OUT) throw new Error('Workflow run has failed due to timeout')
6261
}
6362

6463
async function handleLogs(args: any, workflowHandler: WorkflowHandler) {
6564
try {
6665
const workflowRunId = await workflowHandler.getWorkflowRunId()
67-
await handleWorkflowLogsPerJob(args, workflowRunId);
66+
await handleWorkflowLogsPerJob(args, workflowRunId)
6867
} catch(e: any) {
69-
core.error(`Failed to handle logs of triggered workflow. Cause: ${e}`);
68+
core.error(`Failed to handle logs of triggered workflow. Cause: ${e}`)
7069
}
7170
}
7271

@@ -75,34 +74,34 @@ async function handleLogs(args: any, workflowHandler: WorkflowHandler) {
7574
//
7675
async function run(): Promise<void> {
7776
try {
78-
const args = getArgs();
79-
const workflowHandler = new WorkflowHandler(args.token, args.workflowRef, args.owner, args.repo, args.ref, args.runName);
77+
const args = getArgs()
78+
const workflowHandler = new WorkflowHandler(args.token, args.workflowRef, args.owner, args.repo, args.ref, args.runName)
8079

8180
// Trigger workflow run
82-
await workflowHandler.triggerWorkflow(args.inputs);
83-
core.info(`Workflow triggered 🚀`);
81+
await workflowHandler.triggerWorkflow(args.inputs)
82+
core.info('Workflow triggered 🚀')
8483

8584
if (args.displayWorkflowUrl) {
8685
const url = await getFollowUrl(workflowHandler, args.displayWorkflowUrlInterval, args.displayWorkflowUrlTimeout)
87-
core.info(`You can follow the running workflow here: ${url}`);
88-
core.setOutput('workflow-url', url);
86+
core.info(`You can follow the running workflow here: ${url}`)
87+
core.setOutput('workflow-url', url)
8988
}
9089

9190
if (!args.waitForCompletion) {
92-
return;
91+
return
9392
}
9493

95-
core.info(`Waiting for workflow completion`);
96-
const { result, start } = await waitForCompletionOrTimeout(workflowHandler, args.checkStatusInterval, args.waitForCompletionTimeout);
94+
core.info('Waiting for workflow completion')
95+
const { result, start } = await waitForCompletionOrTimeout(workflowHandler, args.checkStatusInterval, args.waitForCompletionTimeout)
9796

98-
await handleLogs(args, workflowHandler);
97+
await handleLogs(args, workflowHandler)
9998

100-
core.setOutput('workflow-id', result?.id);
101-
core.setOutput('workflow-url', result?.url);
102-
computeConclusion(start, args.waitForCompletionTimeout, result);
99+
core.setOutput('workflow-id', result?.id)
100+
core.setOutput('workflow-url', result?.url)
101+
computeConclusion(start, args.waitForCompletionTimeout, result)
103102

104103
} catch (error: any) {
105-
core.setFailed(error.message);
104+
core.setFailed(error.message)
106105
}
107106
}
108107

src/utils.ts

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,19 @@ enum TimeUnit {
88
}
99

1010
function toMilliseconds(timeWithUnit: string): number {
11-
const unitStr = timeWithUnit.substring(timeWithUnit.length-1);
12-
const unit = TimeUnit[unitStr.toUpperCase() as keyof typeof TimeUnit];
11+
const unitStr = timeWithUnit.substring(timeWithUnit.length-1)
12+
const unit = TimeUnit[unitStr.toUpperCase() as keyof typeof TimeUnit]
1313
if (!unit) {
14-
throw new Error('Unknown time unit '+unitStr);
14+
throw new Error('Unknown time unit '+unitStr)
1515
}
16-
const time = parseFloat(timeWithUnit);
17-
return time * unit;
16+
const time = parseFloat(timeWithUnit)
17+
return time * unit
1818
}
1919

2020
function parse(inputsJson: string) {
2121
if(inputsJson) {
2222
try {
23-
return JSON.parse(inputsJson);
23+
return JSON.parse(inputsJson)
2424
} catch(e) {
2525
throw new Error(`Failed to parse 'inputs' parameter. Must be a valid JSON.\nCause: ${e}`)
2626
}
@@ -29,28 +29,28 @@ function parse(inputsJson: string) {
2929
}
3030
export function getArgs() {
3131
// Required inputs
32-
const token = core.getInput('token');
33-
const workflowRef = core.getInput('workflow');
32+
const token = core.getInput('token')
33+
const workflowRef = core.getInput('workflow')
3434
// Optional inputs, with defaults
35-
const ref = core.getInput('ref') || github.context.ref;
35+
const ref = core.getInput('ref') || github.context.ref
3636
const [owner, repo] = core.getInput('repo')
3737
? core.getInput('repo').split('/')
38-
: [github.context.repo.owner, github.context.repo.repo];
38+
: [github.context.repo.owner, github.context.repo.repo]
3939

4040
// Decode inputs, this MUST be a valid JSON string
41-
let inputs = parse(core.getInput('inputs'));
41+
const inputs = parse(core.getInput('inputs'))
4242

43-
const displayWorkflowUrlStr = core.getInput('display-workflow-run-url');
44-
const displayWorkflowUrl = displayWorkflowUrlStr && displayWorkflowUrlStr === 'true';
45-
const displayWorkflowUrlTimeout = toMilliseconds(core.getInput('display-workflow-run-url-timeout'));
46-
const displayWorkflowUrlInterval = toMilliseconds(core.getInput('display-workflow-run-url-interval'));
43+
const displayWorkflowUrlStr = core.getInput('display-workflow-run-url')
44+
const displayWorkflowUrl = displayWorkflowUrlStr && displayWorkflowUrlStr === 'true'
45+
const displayWorkflowUrlTimeout = toMilliseconds(core.getInput('display-workflow-run-url-timeout'))
46+
const displayWorkflowUrlInterval = toMilliseconds(core.getInput('display-workflow-run-url-interval'))
4747

48-
const waitForCompletionStr = core.getInput('wait-for-completion');
49-
const waitForCompletion = waitForCompletionStr && waitForCompletionStr === 'true';
50-
const waitForCompletionTimeout = toMilliseconds(core.getInput('wait-for-completion-timeout'));
51-
const checkStatusInterval = toMilliseconds(core.getInput('wait-for-completion-interval'));
52-
const runName = core.getInput('run-name');
53-
const workflowLogMode = core.getInput('workflow-logs');
48+
const waitForCompletionStr = core.getInput('wait-for-completion')
49+
const waitForCompletion = waitForCompletionStr && waitForCompletionStr === 'true'
50+
const waitForCompletionTimeout = toMilliseconds(core.getInput('wait-for-completion-timeout'))
51+
const checkStatusInterval = toMilliseconds(core.getInput('wait-for-completion-interval'))
52+
const runName = core.getInput('run-name')
53+
const workflowLogMode = core.getInput('workflow-logs')
5454

5555
return {
5656
token,
@@ -67,29 +67,29 @@ export function getArgs() {
6767
waitForCompletionTimeout,
6868
runName,
6969
workflowLogMode
70-
};
70+
}
7171
}
7272

7373
export function sleep(ms: number) {
74-
return new Promise(resolve => setTimeout(resolve, ms));
74+
return new Promise(resolve => setTimeout(resolve, ms))
7575
}
7676

7777
export function isTimedOut(start: number, waitForCompletionTimeout: number) {
78-
return Date.now() > start + waitForCompletionTimeout;
78+
return Date.now() > start + waitForCompletionTimeout
7979
}
8080

8181
export function formatDuration(duration: number) {
82-
const durationSeconds = duration / 1000;
83-
const hours = Math.floor(durationSeconds / 3600);
84-
const minutes = Math.floor((durationSeconds - (hours * 3600)) / 60);
85-
const seconds = durationSeconds - (hours * 3600) - (minutes * 60);
82+
const durationSeconds = duration / 1000
83+
const hours = Math.floor(durationSeconds / 3600)
84+
const minutes = Math.floor((durationSeconds - (hours * 3600)) / 60)
85+
const seconds = durationSeconds - (hours * 3600) - (minutes * 60)
8686

87-
let hoursStr = hours + '';
88-
let minutesStr = minutes + '';
89-
let secondsStr = seconds + '';
87+
let hoursStr = hours + ''
88+
let minutesStr = minutes + ''
89+
let secondsStr = seconds + ''
9090

91-
if (hours < 10) {hoursStr = "0"+hoursStr;}
92-
if (minutes < 10) {minutesStr = "0"+minutesStr;}
93-
if (seconds < 10) {secondsStr = "0"+secondsStr;}
94-
return hoursStr+'h '+minutesStr+'m '+secondsStr+'s';
91+
if (hours < 10) {hoursStr = '0'+hoursStr}
92+
if (minutes < 10) {minutesStr = '0'+minutesStr}
93+
if (seconds < 10) {secondsStr = '0'+secondsStr}
94+
return hoursStr+'h '+minutesStr+'m '+secondsStr+'s'
9595
}

0 commit comments

Comments
 (0)