From f2894c177acb56888532f98cdc85b15efbae9782 Mon Sep 17 00:00:00 2001 From: nicktrn <55853254+nicktrn@users.noreply.github.com> Date: Fri, 5 Apr 2024 15:47:58 +0100 Subject: [PATCH] switch to busybox and only call post start hook for restore (#1005) --- .changeset/polite-ducks-switch.md | 5 +++++ apps/kubernetes-provider/src/index.ts | 17 ++++++++++------- packages/cli-v3/src/Containerfile.prod | 5 ++++- 3 files changed, 19 insertions(+), 8 deletions(-) create mode 100644 .changeset/polite-ducks-switch.md diff --git a/.changeset/polite-ducks-switch.md b/.changeset/polite-ducks-switch.md new file mode 100644 index 000000000..0b875b5b6 --- /dev/null +++ b/.changeset/polite-ducks-switch.md @@ -0,0 +1,5 @@ +--- +"trigger.dev": patch +--- + +Fix post start hooks diff --git a/apps/kubernetes-provider/src/index.ts b/apps/kubernetes-provider/src/index.ts index f8a213727..656986e37 100644 --- a/apps/kubernetes-provider/src/index.ts +++ b/apps/kubernetes-provider/src/index.ts @@ -152,11 +152,6 @@ class KubernetesTaskOperations implements TaskOperations { }, }, lifecycle: { - postStart: { - exec: { - command: this.#getLifecycleCommand("postStart", "create"), - }, - }, preStop: { exec: { command: this.#getLifecycleCommand("preStop", "terminate"), @@ -404,11 +399,19 @@ class KubernetesTaskOperations implements TaskOperations { type: THookType, cause: THookType extends "postStart" ? PostStartCauses : PreStopCauses ) { - const retries = 5 + const retries = 5; // This will retry sending the lifecycle hook up to `retries` times // The sleep is required as this may start running before the HTTP server is up - return ["/bin/sh", "-c", `for i in $(seq ${retries}); do sleep 1; wget -q -O- 127.0.0.1:8000/${type}?cause=${cause} && break; done`]; + const exec = [ + "/bin/sh", + "-c", + `for i in $(seq ${retries}); do sleep 1; busybox wget -q -O- 127.0.0.1:8000/${type}?cause=${cause} && break; done`, + ]; + + logger.log("getLifecycleCommand()", { exec }); + + return exec; } #getIndexContainerName(suffix: string) { diff --git a/packages/cli-v3/src/Containerfile.prod b/packages/cli-v3/src/Containerfile.prod index 706deb330..b8167b18b 100644 --- a/packages/cli-v3/src/Containerfile.prod +++ b/packages/cli-v3/src/Containerfile.prod @@ -1,7 +1,10 @@ FROM node:20-bookworm-slim@sha256:d4cdfc305abe5ea78da7167bf78263c22596dc332f2654b662890777ea166224 AS base ENV DEBIAN_FRONTEND=noninteractive -RUN apt-get update && apt-get install -y --no-install-recommends dumb-init && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y --no-install-recommends \ + busybox \ + dumb-init \ + && rm -rf /var/lib/apt/lists/* # Create and set workdir with appropriate permissions RUN mkdir /app && chown node:node /app