| 96 | git -c core.hooksPath=/dev/null -c credential.helper= -c core.fsmonitor= push "https://x-access-token:$GITHUB_TOKEN@github.com/$REPO_OWNER/$REPO_NAME.git" "$BRANCH" >/dev/null 2>${PUSH_ERR_PATH} && echo "__PUSHED__=1"` |
| 97 | |
| 98 | function raceAbort<T>(promise: Promise<T>, signal?: AbortSignal): Promise<T> { |
| 99 | if (!signal) return promise |
| 100 | if (signal.aborted) return Promise.reject(new Error('Pi run aborted')) |
| 101 | return new Promise<T>((resolve, reject) => { |
| 102 | const onAbort = () => reject(new Error('Pi run aborted')) |
| 103 | signal.addEventListener('abort', onAbort, { once: true }) |
| 104 | promise.then( |
| 105 | (value) => { |
| 106 | signal.removeEventListener('abort', onAbort) |
| 107 | resolve(value) |
| 108 | }, |
| 109 | (error) => { |
| 110 | signal.removeEventListener('abort', onAbort) |
| 111 | reject(error) |
| 112 | } |
| 113 | ) |
| 114 | }) |
| 115 | } |
| 116 | |
| 117 | function extractMarkerValues(stdout: string, prefix: string): string[] { |
| 118 | return stdout |