Fix a bug where our new timeout caused the action to stay "alive" (#173)
This commit is contained in:
24
src/main.ts
24
src/main.ts
@@ -1,8 +1,9 @@
|
||||
import * as core from '@actions/core';
|
||||
import * as fs from "fs";
|
||||
import { runUpload } from "./edits";
|
||||
import * as core from '@actions/core'
|
||||
import * as fs from "fs"
|
||||
import { runUpload } from "./edits"
|
||||
import { validateInAppUpdatePriority, validateReleaseFiles, validateStatus, validateUserFraction } from "./input-validation"
|
||||
import { unlink, writeFile } from 'fs/promises';
|
||||
import { unlink, writeFile } from 'fs/promises'
|
||||
import pTimeout from 'p-timeout'
|
||||
|
||||
export async function run() {
|
||||
try {
|
||||
@@ -65,8 +66,7 @@ export async function run() {
|
||||
core.warning(`Unable to find 'debugSymbols' @ ${debugSymbols}`);
|
||||
}
|
||||
|
||||
await withTimeout(
|
||||
3.6e+6, // 60 minute timeout
|
||||
await pTimeout(
|
||||
runUpload(
|
||||
packageName,
|
||||
track,
|
||||
@@ -80,7 +80,10 @@ export async function run() {
|
||||
existingEditId,
|
||||
status,
|
||||
validatedReleaseFiles
|
||||
)
|
||||
),
|
||||
{
|
||||
milliseconds: 3.6e+6
|
||||
}
|
||||
)
|
||||
} catch (error: unknown) {
|
||||
if (error instanceof Error) {
|
||||
@@ -119,11 +122,4 @@ async function validateServiceAccountJson(serviceAccountJsonRaw: string | undefi
|
||||
}
|
||||
}
|
||||
|
||||
async function withTimeout<T>(timeoutMillis: number, promise: Promise<T>): Promise<T> {
|
||||
return Promise.race([
|
||||
new Promise<never>((_, reject) => setTimeout(reject, timeoutMillis)),
|
||||
promise
|
||||
])
|
||||
}
|
||||
|
||||
void run();
|
||||
|
||||
Reference in New Issue
Block a user