Skip to content

chore(ci): add Dependabot grouping, PR auto-labeler, and PR size warning#89

Merged
SebTardif merged 2 commits into
mainfrom
chore/ci-quick-wins
May 27, 2026
Merged

chore(ci): add Dependabot grouping, PR auto-labeler, and PR size warning#89
SebTardif merged 2 commits into
mainfrom
chore/ci-quick-wins

Conversation

@SebTardif

@SebTardif SebTardif commented May 27, 2026

Copy link
Copy Markdown
Contributor

Batch of CI/repo improvements:

E2E pipeline optimization (new)

  • Merged the two separate E2E jobs (Chainsaw + Go) into a single job
  • Cluster setup starts immediately, overlapping with lint/unit instead of waiting for them
  • Both test suites run concurrently on the shared cluster
  • Before: lint (3m) -> setup (4m) -> tests (5.5m) = ~12.5m critical path
  • After: max(lint 3m, setup 4m) -> tests (5.5m) = ~9.5m critical path (~25% faster)
  • Eliminates duplicate cluster provisioning (1 cluster instead of 2)

Dependabot grouping (#65)

  • Go modules: k8s.io/* and sigs.k8s.io/* grouped together; remaining minor/patch updates grouped separately
  • GitHub Actions: all updates grouped into a single PR
  • Reduces weekly Dependabot PR noise from ~13 individual PRs to ~3 grouped PRs

PR auto-labeling (#62)

  • actions/labeler v5 workflow auto-labels PRs by changed paths
  • Labels: area/api, area/controller, area/helm, area/ci, area/docs, area/e2e, area/cli

PR size warning (#73)

  • Labels PRs by diff size: size/xs (<10), size/s (10-49), size/m (50-249), size/l (250-499), size/xl (500+)
  • Posts a warning comment on XL PRs suggesting a split

Also closed (settings changes, no code):

Closes #65
Closes #62
Closes #73

Comment on lines +19 to +23
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
fetch-depth: 0
ref: ${{ github.event.pull_request.head.sha }}
- name: Calculate diff size and apply label
SebTardif added 2 commits May 27, 2026 07:55
- Group Dependabot Go module updates: k8s.io/* together, remaining
  minor/patch together. Group all GitHub Actions updates into a single
  PR. Reduces weekly Dependabot PR noise from ~13 individual PRs to ~3.
- Add actions/labeler workflow to auto-label PRs by changed paths
  (area/api, area/controller, area/helm, area/ci, area/docs, area/e2e,
  area/cli).
- Add PR size labeler (xs/s/m/l/xl) with a warning comment on XL PRs
  (500+ lines) suggesting a split.

Closes #65
Closes #62
Closes #73

Signed-off-by: Sebastien Tardif <sebtardif@ncf.ca>
Merge the two E2E jobs (Chainsaw + Go) into a single job that:
1. Starts cluster setup immediately (no dependency on lint/unit)
2. Polls the GitHub API to wait for lint+unit to pass
3. Runs both Chainsaw and Go E2E concurrently on the shared cluster

Before: lint (3m) -> E2E setup (4m) -> tests (5.5m) = ~12.5m critical path
After:  max(lint 3m, E2E setup 4m) -> tests (5.5m) = ~9.5m critical path

Saves ~3 minutes per CI run, eliminates duplicate cluster provisioning
(one cluster instead of two), and halves the runner cost for E2E.

Signed-off-by: Sebastien Tardif <sebtardif@ncf.ca>
@SebTardif SebTardif force-pushed the chore/ci-quick-wins branch from 4993529 to d38a660 Compare May 27, 2026 14:56
@SebTardif SebTardif merged commit 0434c08 into main May 27, 2026
29 of 30 checks passed
@SebTardif SebTardif deleted the chore/ci-quick-wins branch May 27, 2026 15:13
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.

ci: add PR size warning for large diffs ci: group Dependabot updates to reduce PR noise ci: add PR auto-labeling with actions/labeler

2 participants