@crvouga/mockingbird-service-ecs

中文文档
1.11.0发布于 2026/11/11MITTypeScriptES Module构建来源已验证近 30 天下载 3020

AWS ECS Fargate 运行任务接受和失败模拟器.

中文使用文档
文档目录6 节
  1. 安装
  2. 使用量
  3. 控制和状态
  4. 核查
  5. 故意不模拟
  6. API 密码

@crvouga/ mockingbird-service-ecs (英语)

本地模拟器。 真正的API合同. 部分 嘲笑鸟。 。 。 .

WIP AWS ECS Fargate 运行任务控制-平面模拟器. 它记录任务接受情况; 它从未开始 集装箱。 接线合同如下 运行任务。 。 。 .

安装

bun add @crvouga/mockingbird-service-ecs

使用量

import { ECSClient, RunTaskCommand } from "@aws-sdk/client-ecs"
import { createServer } from "@crvouga/mockingbird-service-ecs/server"

// Test setup: the ECS client your application already uses, pointed at the emulator.
const server = await createServer()
const ecs = new ECSClient({
  endpoint: server.url,
  region: "us-east-1",
  credentials: { accessKeyId: "fixture", secretAccessKey: "fixture" },
})

// Application code, unchanged. Cluster default and task definition fixture:1 are the fixtures.
const { tasks, failures } = await ecs.send(
  new RunTaskCommand({
    cluster: "default",
    taskDefinition: "fixture:1",
    launchType: "FARGATE",
    networkConfiguration: { awsvpcConfiguration: { subnets: ["subnet-fixture"] } },
  }),
)
// tasks[0].lastStatus === "PROVISIONING"; failures is []

await server.close()

CLI: 爱丽丝 mockingbird-ecs serve --port 12129。指向应用程序厂的终点 url 或 服务器上的 AWS ENDPOINT URL ECS. POST / 有 X- Amz- 目标 AmazonEC2集装箱服务V20141113. Runtask接受AWS JSON 1.1. 默认的定着是集群默认和任务定义固定:1与容器应用. 发送启动 Type FARGATE, 任务定义, 计数(1–10) 网络配置. awsvpc 配置 和可选的覆盖。 对策将任务与失败分开. 组名/ARN和任务定义 ARN/家庭:修订/最晚活跃的家庭解决原始资源. 缺少集群返回 ClusterNotFound Excuse; 缺少定义返回客户端Excuse. 覆盖只保留任务状态,而不是请求日记. 只使用合成固定值 .

控制和状态

选项集群和任务定义取代了默认的固定装置. 他们的记录是输出的 集群和任务定义类型。 共享的/ admin/州道也为这些藏品提供种子. 从任务中读取已接受的任务并请求元数据( 网络配置, 任务 ARN, 失败) 从请求。 种子投放失败 : 每个运行任务按插入顺序计数失败并接受剩余任务计数. 失败持续到被删除/重置;这是测试控制,而不是容量模拟器. 任务仍然以想要的状态运行提供; 创建At使用模拟时钟 . 同一客户端在集群内进行24小时的重试返回相同结果; 已更改的参数返回关联资源集中的冲突排除。 托肯斯是可重置状态.

共享/ admin提供健康,UI,状态,重置,时间线检查站,时钟,日记和计量. 命名空间载体: x- mocking bird-namespace, / admin/ns/name 和 SigV4 访问键映射通过 PUT / admin/证书. 没有进行签字核查和IAM政策评价. 日记条目略去机构和全权证书. 没有释放出网络用户 . 预设:访问-拒绝(AWS 400)、节奏(400)、速率-有限(明显HTTP 429测试故障), 内部 error (500), 连接 滴入. 共同的断层也支持确定性延迟.

核查

bun test 运行接受和 OpenAPI 驱动的自平并带有差异检测. bun scripts/sdk.ts 使用uv安装和运行精确的boto3 1.43.56对已安装的模拟器: 成功运行任务, 保存了覆盖, 偶数性, 缺少资源和 SDK 例外 . 这证明了SDK兼容性,而不是活的AWS等同. bun run parity 退出 2 是因为此 包中只包含一个可计费计算创建操作的模型;没有隐含地发出活请求. 现场验证需要经授权的孤立的ECS账户/集群和明确的执行核准.

故意不模拟

真正的容器执行、任务周期进展、最终一致性、网络提供、, IAM/签名评价、基础设施部署、EC2/EXTERNAL/能力提供者发射模式、, 任务定义或集群突变和其他ECS操作。 巢绕外名, 命令和环境通过,而不是全面验证。 没有子网可到达性, 图像有效性或资源容量模拟。 远门是唯一的型号发射型. Task ids和平台Version LATEST是本地站点,而不是精确的AWS生成的ids/已解决版本. 同位素寿命为24小时,而模拟器任务仍未完成;停止后期限缩短 并且任务停止反应重写在此表面之外.

API 密码

主要运行时间出口:ESAPI,ES NAMESPACE,DEFAULT CLUSTER,DEFAULT TASK DEFINITION, 创建运行时, ECS PRESETS, 文档, 操作IDs, 支持操作IDs . 类型:集群,任务定义,失败,任务,ECSAPI选项,ECSRuntime选项,ECSRuntime. 服务器条目:创建Server,DEFAULT PORT,服务目标;类型为ECSServer可选. CLI 条目执行服务, 不输出运行时间值 .

版本与发布记录

@crvouga/mockingbird-service-ecs 共发布 22 个版本,首次发布于 2026/10/05;过去 12 个月发布了 22 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.11.0latest2026/11/11今天
1.10.92026/11/038 天前
1.10.82026/11/038 天前
1.10.72026/11/038 天前
1.10.62026/11/038 天前
1.10.52026/11/038 天前

关于 @crvouga/mockingbird-service-ecs 的常见问题

@crvouga/mockingbird-service-ecs 是什么?

AWS ECS Fargate 运行任务接受和失败模拟器.

如何安装 @crvouga/mockingbird-service-ecs?

在项目目录运行 npm install @crvouga/mockingbird-service-ecs,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 mockingbird-ecs,可以用 npx mockingbird-ecs 直接运行。

@crvouga/mockingbird-service-ecs 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@crvouga/mockingbird-service-ecs 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@crvouga/mockingbird-service-ecs 可以商用吗?

@crvouga/mockingbird-service-ecs 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@crvouga/mockingbird-service-ecs 的下载量有多少?

根据 npm 官方下载统计,@crvouga/mockingbird-service-ecs 在 2026/10/11 – 2026/11/09 这 30 天内被下载 3,020 次,日均约 101 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@crvouga/mockingbird-service-ecs 还在维护吗?

最新版本 1.11.0 发布于 2026/11/11(今天);至今共发布 22 个版本,其中过去 12 个月发布了 22 个;首次发布于 2026/10/05。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。