Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Extract the fat inline bash steps from upstream-release-docs.yml into scripts/

已关闭
#1,112 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
52/100
Issue 类型
重构
描述清晰度
描述清楚
活跃度
活跃
技术栈
bash, github-actions, javascript
领域
ci-cd, devops, tooling

调研方向

阅读 .github/workflows/upstream-release-docs.yml、Augment PR body 步骤以及 scripts/upstream-release/ 中现有的文件。使用一次真实的历史运行所采用的环境,将提取出的脚本的输出与该次运行实际生成的 PR body 进行比较;完成的标准是保留原有行为,并且该脚本已纳入现有的 formatting 和 linting 设置。

由索引模型根据 Issue 内容生成。

描述

enhancement github_actions needs-triage

.github/workflows/upstream-release-docs.yml is 1667 lines across 41 steps, including 960 lines of inline bash. The size is concentrated in four steps:

Step Inline bash lines
Augment PR body (marker-delimited section) 313
Assign reviewers and prepare contributor mentions 121
Resolve release owner and contributors 99
Capture skill signal files 74
remaining 37 steps 353 (avg 9)

Two reasons to extract the big ones:

  • Nothing lints the inline bash. There is no shellcheck or actionlint in CI, so checking a change today means hand-extracting steps[].run from the YAML, stubbing ${{ }}, and piping it to shellcheck.
  • scripts/upstream-release/ already holds five .mjs files and this workflow already invokes one, so a script there inherits Prettier and ESLint from existing CI with no new tooling.

Augment PR body is the best first candidate: its only I/O is roughly 25 env vars in and one gh pr edit --body-file out, and the PR body is the artifact reviewers actually read.

Scope

In:

  • Augment PR body to scripts/upstream-release/render-pr-body.mjs
  • Assign reviewers and Resolve release owner and contributors as separate follow-ups if the first goes cleanly

Out:

  • The two Claude step prompts (88 lines). Their content is almost entirely interpolated run context, and the durable instructions already live in the upstream-release-docs skill.
  • Capture skill signal files, mostly file reads and GITHUB_OUTPUT heredocs.
  • The 37 short steps, which belong inline.

Sequencing

After #1111 has run live on two or three release PRs. That change is unvalidated, and stacking a refactor on it means a live failure has two candidate causes instead of one.

#1111 and this refactor touch the same steps, so if #1111 needs iteration, extract Augment PR body first (#1111 only added two table rows and two sections to it) and leave the reviewer steps until after validation.

Verification

Behavior-preserving: render the extracted script against the env of a real past run and diff the output against that run's actual PR body.

主要语言
JavaScript
星标
4
派生
4
平均合并
19 小时 20 分钟
30 天内合并 PR
85

环境准备

在 Codespaces 中打开

在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

stacklok/docs-website 的其他 Issue

查看 stacklok/docs-website 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。