mirror of
https://github.com/actions/runner-container-hooks.git
synced 2025-12-14 08:36:45 +00:00
Switch exec pod promise to reject on websocket error (#127)
* Switch exec pod promise to reject on websocket error * Fix incorrectly resolved merge conflict * Apply suggestions from code review Co-authored-by: Ferenc Hammerl <31069338+fhammerl@users.noreply.github.com> --------- Co-authored-by: Ferenc Hammerl <31069338+fhammerl@users.noreply.github.com>
This commit is contained in:
@@ -228,8 +228,10 @@ export async function execPodStep(
|
|||||||
): Promise<void> {
|
): Promise<void> {
|
||||||
const exec = new k8s.Exec(kc)
|
const exec = new k8s.Exec(kc)
|
||||||
command = fixArgs(command)
|
command = fixArgs(command)
|
||||||
await new Promise(async function (resolve, reject) {
|
// Exec returns a websocket. If websocket fails, we should reject the promise. Otherwise, websocket will call a callback. Since at that point, websocket is not failing, we can safely resolve or reject the promise.
|
||||||
await exec.exec(
|
await new Promise(function (resolve, reject) {
|
||||||
|
exec
|
||||||
|
.exec(
|
||||||
namespace(),
|
namespace(),
|
||||||
podName,
|
podName,
|
||||||
containerName,
|
containerName,
|
||||||
@@ -253,6 +255,9 @@ export async function execPodStep(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
// If exec.exec fails, explicitly reject the outer promise
|
||||||
|
// eslint-disable-next-line github/no-then
|
||||||
|
.catch(e => reject(e))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user