1import { Task } from "@/AWS/ECS/Task.ts";
2
3/**
4 * A minimal one-shot Fargate task for the ECS task-control binding tests
5 * (`RunTask` / `StopTask` / `DescribeTasks` / `ListTasks`).
6 *
7 * Honest external form: a pre-built busybox image (mirrored into ECR) whose
8 * default command echoes a marker and exits 0 — no Effect program, no impl.
9 * Tests that need a long-running task (e.g. StopTask) override the command
10 * at `runTask` time via `overrides.containerOverrides` (which replaces the
11 * task definition's command).
12 *
13 * Docker Hub busybox: the public.ecr.aws mirror aggressively rate-limits
14 * anonymous pulls during local builds (see fixtures/task.ts).
15 */
16export default Task("EcsBindingsOneShotTask", {
17 image: "busybox:stable",
18 command: ["sh", "-c", "echo alchemy-ecs-bindings-oneshot"],
19 cpu: 256,
20 memory: 512,
21 taskName: "alchemy-test-ecs-bindings-oneshot",
22});