Skip to content

ci: improve workflows#6764

Open
luc122c wants to merge 6 commits into
nuxt:v4from
luc122c:feat/improve-actions
Open

ci: improve workflows#6764
luc122c wants to merge 6 commits into
nuxt:v4from
luc122c:feat/improve-actions

Conversation

@luc122c

@luc122c luc122c commented Jul 22, 2026

Copy link
Copy Markdown

🔗 Linked issue

❓ Type of change

  • 📖 Documentation (updates to the documentation or readme)
  • 🐞 Bug fix (a non-breaking change that fixes an issue)
  • 👌 Enhancement (improving an existing functionality)
  • ✨ New feature (a non-breaking change that adds functionality)
  • 🧹 Chore (updates to the build process or auxiliary tools and libraries)
  • ⚠️ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

Hi, there are a few improvements that can be made to the workflows.

ubuntu-slim runner

Use ubuntu-slim for pr-labeler.yml, reproduction.yml, reproduire.yml, and stale.yml. The runner readme provides more info about the tools and the blog post gives some potential use cases.

persist-credentials: false

Use persist-credentials: false on every actions/checkout in module.yml, release.yml, and reproduire.yml (none of the jobs perform subsequent git operations — pnpm release --publishOnly in release.yml doesn't touch git). See usage for more info.

parallel keyword

Use parallel for independent steps in module.yml and release.yml

GitHub Actions announced the parallel keyword — syntactic sugar that groups independent steps to run concurrently within a single job, then waits for all of them before continuing. See the workflow syntax docs for the full reference.

Concurrency

Add concurrency to the PR-triggered workflows so a new push cancels the previous in-flight run of the same workflow. module.yml uses the || github.ref fallback to keep per-branch grouping for push events, while still cancelling on PRs.

Consolidate module builds

In module.yml, each build was defined separately, but all shared an identical workflow. We can use the matrix to just swap in the template and make the job easier to read and understand. I've kept the playground job separate as it uses pnpm install --ignore-workspace and has extra env variables set.

📝 Checklist

  • I have linked an issue or discussion.
  • I have updated the documentation accordingly.

Related

@luc122c
luc122c requested a review from benjamincanac as a code owner July 22, 2026 09:56
Copilot AI review requested due to automatic review settings July 22, 2026 09:56
@github-actions github-actions Bot added the v4 #4488 label Jul 22, 2026

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

This PR improves the repository’s GitHub Actions workflows by optimizing runner selection, tightening checkout credential behavior, enabling step-level parallelism where safe, and reducing wasted CI runs via workflow concurrency cancellation.

Changes:

  • Switch several low-requirement workflows to the ubuntu-slim runner.
  • Add persist-credentials: false to relevant actions/checkout steps to avoid persisting tokens when not needed.
  • Use the new steps[*].parallel grouping in module.yml and release.yml, and add PR-oriented concurrency cancellation to module.yml.

Reviewed changes

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

Show a summary per file
File Description
.github/workflows/stale.yml Move stale workflow to ubuntu-slim runner.
.github/workflows/reproduire.yml Use ubuntu-slim and disable persisted checkout credentials.
.github/workflows/reproduction.yml Move reproduction workflow to ubuntu-slim runner.
.github/workflows/release.yml Disable persisted checkout credentials and parallelize lint/typecheck/test steps.
.github/workflows/pr-labeler.yml Move PR labeler workflow to ubuntu-slim runner.
.github/workflows/module.yml Add concurrency cancellation, disable persisted checkout credentials across jobs, and parallelize independent step groups.

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

@coderabbitai

coderabbitai Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

GitHub Actions workflows now cancel superseded runs within matching concurrency groups. Validation and build tasks run in parallel in module and release workflows. Checkout steps disable credential persistence, template jobs use a shared matrix with Nuxt preparation, and selected jobs switch from ubuntu-latest to ubuntu-slim.

Estimated code review effort: 3 (Moderate) | ~20 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title is related to the workflow changes, but it's very generic and doesn't identify the main improvements. Make it more specific, e.g. mention ubuntu-slim, parallel steps, or checkout credential changes.
✅ Passed checks (4 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description check ✅ Passed The description clearly matches the workflow-focused changes in the pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@pkg-pr-new

pkg-pr-new Bot commented Jul 22, 2026

Copy link
Copy Markdown
npm i https://pkg.pr.new/@nuxt/ui@6764

commit: f3932d1

Copilot AI review requested due to automatic review settings July 22, 2026 10:19

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 6 out of 6 changed files in this pull request and generated no new comments.

Copilot AI review requested due to automatic review settings July 22, 2026 10:38

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 6 out of 6 changed files in this pull request and generated 1 comment.

Comment on lines 14 to +16
- uses: actions/checkout@v7
with:
persist-credentials: false

@coderabbitai coderabbitai Bot 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.

🧹 Nitpick comments (1)
.github/workflows/module.yml (1)

127-151: 🎯 Functional Correctness | 🔵 Trivial | ⚡ Quick win

Consolidating template jobs into a matrix changes failure isolation — add fail-fast: false.

Previously each template ran as an independent job, so one template's failure didn't affect the others. With this matrix consolidation, GitHub Actions' default strategy.fail-fast: true will cancel the still-running/queued sibling template jobs as soon as any one template fails, hiding results for the remaining templates until a re-run. Given this job validates 11 independent template repos, that's likely not the intended behavior.

♻️ Proposed fix
     strategy:
+      fail-fast: false
       matrix:
         os: [ubuntu-latest] # macos-latest, windows-latest
         node: [22]
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/module.yml around lines 127 - 151, Set strategy.fail-fast
to false in the templates matrix job so a failure in one template does not
cancel queued or running sibling template validations. Keep the existing matrix
entries and job configuration unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In @.github/workflows/module.yml:
- Around line 127-151: Set strategy.fail-fast to false in the templates matrix
job so a failure in one template does not cancel queued or running sibling
template validations. Keep the existing matrix entries and job configuration
unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 916e35c8-07e5-4bc8-9c69-e1d005102eee

📥 Commits

Reviewing files that changed from the base of the PR and between 84ebcd9 and 47eaa81.

📒 Files selected for processing (1)
  • .github/workflows/module.yml

Copilot AI review requested due to automatic review settings July 22, 2026 11:13

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 6 out of 6 changed files in this pull request and generated 1 comment.

Comment thread .github/workflows/pr-labeler.yml
Copilot AI review requested due to automatic review settings July 22, 2026 11:35

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 6 out of 6 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

.github/workflows/reproduire.yml:16

  • This workflow sets a restricted permissions block (only issues: write), but it also runs actions/checkout, which typically requires contents: read. With the current permissions, actions/checkout can fail due to missing repository read access.
      - uses: actions/checkout@v7
        with:
          persist-credentials: false

@luc122c
luc122c marked this pull request as draft July 22, 2026 12:19
Copilot AI review requested due to automatic review settings July 22, 2026 12:20

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 6 out of 6 changed files in this pull request and generated no new comments.

@luc122c
luc122c marked this pull request as ready for review July 22, 2026 12:39
@luc122c luc122c changed the title ci: improve actions workflows ci: improve workflows Jul 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

v4 #4488

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants