关于 dataproc-skills
dataproc-skills 是一组用于获取和列出 Google Dataproc 集群与作业的 Node.js 脚本,支持筛选和分页,并会自动从 .env 文件加载环境变量。
主要功能
- 01按名称获取集群
- 02按 ID 获取作业
- 03筛选并列出集群
- 04按状态匹配并列出作业
- 05分页查看集群和作业结果
- 06从 .env 文件加载环境变量
适用场景
- 01查看 Dataproc 集群详情
- 02按 ID 查询 Dataproc 作业
- 03按状态或标签列出集群
- 04查找运行中或已完成的作业
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ cline/ skills --skill dataproc-skills安装后在 Claude Code 中输入/dataproc-skills确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
scripts/get_cluster.jsget_job.jslist_clusters.jslist_jobs.js详细介绍
用法
所有脚本均可使用 Node.js 执行。将 <param_name> 和 <param_value> 替换为实际值。
Bash:
node <skill_dir>/scripts/<script_name>.js '{"<param_name>": "<param_value>"}'
PowerShell:
node <skill_dir>/scripts/<script_name>.js '{\"<param_name>\": \"<param_value>\"}'
注意:脚本会自动从各种 .env 文件中加载环境变量。除非技能执行因缺少环境变量而失败,否则不要要求用户设置变量。
脚本
get_cluster
获取 Dataproc 集群
参数
| 名称 | 类型 | 描述 | 必填 | 默认值 |
|---|---|---|---|---|
| clusterName | string | 集群的短名称,例如,对于 "projects/my-project/regions/us-central1/clusters/my-cluster",传入 "my-cluster"(项目和区域继承自源) | 否 |
get_job
获取 Dataproc 作业
参数
| 名称 | 类型 | 描述 | 必填 | 默认值 |
|---|---|---|---|---|
| jobId | string | 作业 ID,例如,对于 "projects/my-project/regions/us-central1/jobs/my-job",传入 "my-job"(项目和区域继承自源) | 否 |
list_clusters
列出并筛选 Dataproc 集群
参数
| 名称 | 类型 | 描述 | 必填 | 默认值 |
|---|---|---|---|---|
| filter | string | 用于限制要列出的集群的筛选条件。筛选条件区分大小写,语法如下:field = value [AND [field = value]] ...,其中 field 为 status.state、clusterName 或 labels.[KEY],而 [KEY] 是标签键。value 可以是 *,用于匹配所有值。status.state 可以是以下任一值:ACTIVE、INACTIVE、CREATING、RUNNING、ERROR、DELETING、UPDATING、STOPPING 或 STOPPED。ACTIVE 包含 CREATING、UPDATING 和 RUNNING 状态。INACTIVE 包含 DELETING、ERROR、STOPPING 和 STOPPED 状态。clusterName 是创建时指定的集群名称。仅支持逻辑 AND 运算符;以空格分隔的项目会被视为隐式使用 AND 运算符。 | 否 | |
| pageSize | integer | 单页中要返回的集群最大数量(默认值为 20) | 否 | 20 |
| pageToken | string | 从之前的 ListClusters 调用中收到的页面令牌 | 否 |
list_jobs
列出并筛选 Dataproc 作业
参数
| 名称 | 类型 | 描述 | 必填 | 默认值 |
|---|---|---|---|---|
| filter | string | 用于限制要列出的作业的筛选条件。筛选条件区分大小写,语法如下:field = value [AND [field = value]] ...,其中 field 为 clusterName、status.state 或 labels.[KEY],而 [KEY] 是标签键。value 可以是 *,表示匹配所有值。status.state 可以是以下值之一:PENDING、RUNNING、CANCEL_PENDING、JOB_STATE_CANCELLED、DONE、ERROR 或 ATTEMPT_FAILURE。仅支持逻辑 AND 运算符;以空格分隔的项会被视为隐式使用 AND 运算符。建议按 clusterName 筛选,以提高查询性能。 | 否 | |
| jobStateMatcher | string | 指定作业状态匹配器应匹配所有作业、仅匹配 ACTIVE 作业,还是仅匹配 NON_ACTIVE 作业。默认为 ALL。支持的值:ALL、ACTIVE、NON_ACTIVE。 | 否 | |
| pageSize | integer | 单页返回的最大作业数(默认值为 20) | 否 | 20 |
| pageToken | string | 从先前的 ListJobs 调用中收到的分页令牌 | 否 |
评论
支持 Markdown