云旗页和工人
此包提供了代理工具,用于从 Git 寄存器中部署 Page 项目,列表项目,管理 DNS 记录,并上传 Worker 脚本. 它使用Cloudflare REST API,带有无记名标记.
安装
npm install @framers/agentos-ext-cloud-cloudflare-pages
同伴依赖 : @framers/agentos 有范围 >=0.10.40。 。 。 .
使用量
import { AgentOS } from '@framers/agentos';
const agentos = await AgentOS.create({
extensionManifest: {
packs: [
{
package: '@framers/agentos-ext-cloud-cloudflare-pages',
options: {
apiToken: process.env.CLOUDFLARE_API_TOKEN,
accountId: process.env.CLOUDFLARE_ACCOUNT_ID,
},
},
],
},
});
配置
| 选项 | 秘密编号 | 环境变量 | 需求 | 默认 |
|---|---|---|---|---|
apiToken | cloudflare.apiToken | CLOUDFLARE_API_TOKEN | 对 | 空字符串 |
accountId | cloudflare.accountId | CLOUDFLARE_ACCOUNT_ID | 对 | 空字符串 |
secrets | 没有 | context.secrets,则 {} |
明确选项优先于秘密,然后是环境变量. options.secrets 优先于 context.secrets。 。 。 .
工具
| 工具 | 它会做什么 |
|---|---|
cfDeployPages | 从 Git 仓库部署 Pages 项目, 必要时创建项目 . |
cfListProjects | 列出页面项目及其寄存器,分支,子域,以及最新的部署状态. |
cfConfigureDns | 在按域查找后添加,删除,列表,或更新 DNS 记录. |
cfCreateWorker | 部署包含路由模式、兼容日期和环境约束的工人脚本. |
cfDeployPages
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
gitUrl | 字符串 | 对 | Git 仓库 URL . |
projectName | 字符串 | 没有 | Pages 工程名称, 如果省略的话, 从仓库名称自动生成 . |
productionBranch | 字符串 | 没有 | 生产分支名称,默认 main。 。 。 . |
buildCommand | 字符串 | 没有 | 构建命令覆盖 . |
buildOutputDirectory | 字符串 | 没有 | 构建输出目录 . |
envVars | 对象 | 没有 | 将项目设定为密钥值对的环境变量 . |
cfListProjects
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
limit | 编号 | 没有 | 要返回的最大工程,默认为 25, 计划描述最多为 100 . |
cfConfigureDns
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
domain | 字符串 | 对 | 云花区根域. |
action | 字符串 : add, (中文(简体) ), remove, (中文(简体) ), list, (中文(简体) ), update | 没有 | 要执行的动作, 默认 list。 。 。 . |
recordType | 字符串 : A, (中文(简体) ), AAAA, (中文(简体) ), CNAME, (中文(简体) ), TXT, (中文(简体) ), MX | 没有 | DNS记录类型,描述为需要添加和更新. |
name | 字符串 | 没有 | 记录名或主机名. |
content | 字符串 | 没有 | IP地址,主机名,或文本内容. |
ttl | 编号 | 没有 | TTL以秒为单位,默认 1,它会选择自动TTL. |
proxied | 布尔 | 没有 | 是否通过 Cloudflare 代理, 默认 false。 。 。 . |
priority | 编号 | 没有 | MX记录优先. |
comment | 字符串 | 没有 | 备案的可选评论. |
recordId | 字符串 | 没有 | 记录身份,需要更新和删除. |
cfCreateWorker
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
name | 字符串 | 对 | 工人脚本名称作为标识符使用. |
script | 字符串 | 对 | JavaScript或TypeScript源以ES模块格式发布,默认导出. |
routes | 字符串 [] | 没有 | 把工人绑起来的路线. |
compatibilityDate | 字符串 | 没有 | 运行时间相容日期, 默认 2024-01-01。 。 。 . |
bindings | 对象 | 没有 | 环境变量绑定为键值对. |
页:1
如果缺少 API 令牌或账户 ID , 激活失败 。 它通过 Cloudflare 符号验证端点来验证符号.
页面部署创建项目,设置生产环境变量,并启动远程构建而不等待完成. 该工具用于由下列人员命名的项目: projectName,或以 gitUrl 当它被省略。 URL 解析器接受 GitHub, GitLab, 和 Bitbucket 主机, 但项目创建总是发送源类型 github。创建工程时发送构建设置.
项目环境变量和工人捆绑的使用 plain_text上传到 worker.js 具有JavaScript模块内容类型;服务不转接TypeScript. 工人路由设置错误被忽略.
DNS 添加,更新并删除动作更改远程记录. 需要添加 recordType, (中文(简体) ), name,以及 content; 需要更新和删除 recordId。更新允许部分字段,包括省略 recordType。没有匹配区的域返回出错.
项目前期清单 limit 而不执行计划描述的最大。 工程和 DNS 列表获取一个页面而不遵循 pagination .
许可证
阿帕奇 - 2.0