Skip to content

ci(release): enable meta self-release (all task + self-caller)#242

Merged
charliie-dev merged 3 commits into
devfrom
feature/self-release-enable
Jun 30, 2026
Merged

ci(release): enable meta self-release (all task + self-caller)#242
charliie-dev merged 3 commits into
devfrom
feature/self-release-enable

Conversation

@charliie-dev

@charliie-dev charliie-dev commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Summary

meta couldn't use its own auto-release driver because the driver runs mise run all and meta (a config repo) had no all task. This enables meta to dogfood the driver:

  • [tasks.all] = iac:actionlint + ci (trivy + semgrep). Read-only, no working-tree drift. The license/secret scans (trivy-license/betterleaks/trufflehog) are run by the driver itself as separate steps, so they are deliberately kept OUT of all/ci to avoid double-scanning — matching the 13 consumer repos' pattern.
  • .github/workflows/self-release.yml = workflow_dispatch caller (version + dry_run) of auto-release.yml@main, forwarding the ci-read + pre-release App secrets — same pattern as the 13 consumer callers.

Follow-up (after merge)

Cut meta patch release via Self-Release (dry_run first, then v0.2.5.5). Real release needs the pre-release App in meta's main/dev ruleset bypass_actors.

Refs TMDs#239.

Closes #243

meta has no `mise run all` (config repo), so the auto-release driver couldn't
validate it. Add an `all` task (actionlint + ci scans; the driver runs the
secret/license scans separately) and a Self-Release workflow_dispatch caller of
the reusable auto-release.yml@main, so meta can dogfood its own release driver.

Refs TMDs#239.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

此 PR 讓 meta repo 可以「自我使用(dogfood)」自身的可重用 auto-release driver:補上 mise run all 的入口任務,並新增一個 workflow_dispatch 的 Self-Release caller 來呼叫 auto-release.yml@main,使 config repo 也能走與 consumer repo 一致的 release 流程。

Changes:

  • mise.toml 新增 [tasks.all] 作為 auto-release driver 的驗證入口(actionlint + CI 掃描)。
  • 新增 .github/workflows/self-release.yml,提供手動觸發的 Self-Release 工作流程,轉呼叫可重用的 auto-release.yml@main 並轉送必要 secrets。

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
mise.toml 新增 all 任務作為 release driver 的驗證 gate 入口(供 mise run all 使用)。
.github/workflows/self-release.yml 新增可手動觸發的 caller workflow,呼叫可重用的 auto-release driver 並轉送 inputs/secrets。

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread mise.toml
…lease

The auto-release driver runs ci:trivy-license / betterleaks / trufflehog
as separate steps after `mise run all`, so keeping ci:trivy-license inside
[tasks.ci] (which [tasks.all] depends on) double-scanned it in the meta
self-release pipeline. Drop it from [tasks.ci] so meta matches the consumer
pattern, where license/secret scans live only in the driver. iac:trivy
(config scan) and ci:semgrep are NOT run separately by the driver, so they
correctly stay in ci. The [tasks.all] non-duplication comment is now accurate.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

Comment thread mise.toml

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

Comment thread .github/workflows/self-release.yml
Move contents:write from the workflow level down to jobs.self-release, and
keep the workflow-level default at contents:read. Matches the repo's other
self-* callers (self-dependency-review, self-supply-chain), which run minimal
workflow perms and elevate per job. Functionally identical for the reusable
auto-release.yml call (the caller job's permissions govern the reused
workflow's GITHUB_TOKEN), while tightening the default token scope.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.

@charliie-dev charliie-dev merged commit 8bb1a81 into dev Jun 30, 2026
9 checks passed
@charliie-dev charliie-dev deleted the feature/self-release-enable branch June 30, 2026 20:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enable meta self-release (auto-release driver all-task support)

2 participants