Skip to content

ci: add reusables for legacy-binlog-g1, mysql90-binlog-g1, mysql95-binlog-g1 - #6093

Merged
renecannao merged 1 commit into
GH-Actionsfrom
fix/ghactions-binlog-shards
Aug 16, 2026
Merged

ci: add reusables for legacy-binlog-g1, mysql90-binlog-g1, mysql95-binlog-g1#6093
renecannao merged 1 commit into
GH-Actionsfrom
fix/ghactions-binlog-shards

Conversation

@renecannao

@renecannao renecannao commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

This adds the GH-Actions-branch half of CI coverage for the three binlog groups that were already registered in test/tap/groups/groups.json but had no CI workflow before PR #6086 (which added mysql84-binlog-g1):

  • legacy-binlog-g1 — backend infra-dbdeployer-mysql57-binlog
  • mysql90-binlog-g1 — backend infra-dbdeployer-mysql90-binlog
  • mysql95-binlog-g1 — backend infra-dbdeployer-mysql95-binlog

What this PR does

  1. Adds three shim reusables that delegate to the existing ci-ai-gcov.yml reusable (added in PR ci: wire AI TAP coverage shards #6089) with the per-group tap_group / infra_id. Mirrors the ci-ai-g1.yml / ci-ai-g2.yml pattern extracted in the same PR.
# ci-legacy-binlog-g1.yml (etc.)
jobs:
  tests:
    uses: sysown/proxysql/.github/workflows/ci-ai-gcov.yml@GH-Actions
    with:
      trigger: ${{ inputs.trigger }}
      tap_group: legacy-binlog-g1
      infra_id: ci-legacy-binlog-g1
  1. Stages the mysqlbinlog CLI (built by the mysql-connector-c-8.4.0 build as a side effect of make) into test/tap/tap/bin/ BEFORE the test/deps/ deletion. Without this, the mysql84-binlog-g1 group fails at runtime because the binary is gone after the cache prune (see mysql84-binlog-g1 fails at runtime: test_com_binlog_dump_enables_fast_forward-t cannot find ${TEST_DEPS}/mysqlbinlog #6092). ~37 MB extra in the _test cache; the runner at test/infra/control/run-tests-isolated.bash already finds the workspace and symlinks it into ${TEST_DEPS}/mysqlbinlog.

Companion

The caller side lives on v3.0 in PR #6094 (branch fix/test-deps-mysqlbinlog). This PR must land first — the v3.0 callers invoke ci-<group>.yml@GH-Actions, so resolving the ref requires the files to already exist on GH-Actions. Merging the v3.0 PR before this one would red CI with "Could not find workflow reference".

Issue

Closes #6092 (the first of the issue's two follow-ups; the v3.0 PR also lands the runner fallback that fixes the failing mysqbilnog lookup in mysql84-binlog-g1).

Notes

  • Uses the parameterized ci-ai-gcov.yml shim rather than a dedicated ci-<group>.yml standalone reusable (like ci-mysql84-binlog-g1.yml is). The shim is bit-identical to ai-g1/ai-g2 vs. mysql84-binlog-g1's standalone reusable, so the new workflows inherit the bug fixes (the codecov retry triad, the harness NULLable permissions, etc.) PR ci: wire AI TAP coverage shards #6089 brought into ci-ai-gcov.yml without per-group duplication.
  • The actual MySQL backend for each group is selected by test/tap/groups/<group>/infras.lst, already wired up on v3.0.
  • matrix.infradb is hardcoded to mysql84 in ci-ai-gcov.yml, so the check name for these three workflows will read CI-AI-GCOV / tests (mysql84,genai-gcov) — a label artifact, not the actual backend. The workflow / group name in the GitHub UI is the source of truth. Worth parameterizing matrix.infradb in a follow-up if reviewers want cosmetic accuracy.

…nlog-g1

Platform-side shim workflows that delegate to the existing
ci-ai-gcov.yml reusable (added in PR #6089) with the per-group
tap_group / infra_id. Mirrors the ci-ai-g1.yml / ci-ai-g2.yml pattern
extracted in the same PR.

These complete the caller/reusable pair with the CI-*-g1.yml files
landed on v3.0 — without the reusables here, the new callers would
invoke a non-existent @gh-actions ref and fail every run at workflow
resolution time.

The actual MySQL backend for each group is selected by the group's
test/tap/groups/<group>/infras.lst (infra-dbdeployer-mysql57-binlog /
-mysql90 / -mysql95), already wired up on v3.0.

Closes #6092.
@coderabbitai

coderabbitai Bot commented Aug 16, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: f6e838f5-5050-49ff-acce-ebcbe010239b

📥 Commits

Reviewing files that changed from the base of the PR and between 2dd1395 and ef4553e.

📒 Files selected for processing (3)
  • .github/workflows/ci-legacy-binlog-g1.yml
  • .github/workflows/ci-mysql90-binlog-g1.yml
  • .github/workflows/ci-mysql95-binlog-g1.yml

Included review availability: Your plan includes up to 8 reviews per rolling hour; 7 remain after this review.

📜 Recent review details
🔇 Additional comments (3)
.github/workflows/ci-legacy-binlog-g1.yml (1)

1-22: LGTM!

.github/workflows/ci-mysql90-binlog-g1.yml (1)

1-22: LGTM!

.github/workflows/ci-mysql95-binlog-g1.yml (1)

1-22: LGTM!


📝 Walkthrough

Walkthrough

Added reusable GitHub Actions workflows for legacy, MySQL 9.0, and MySQL 9.5 binlog group 1 CI. Each workflow accepts a trigger and delegates tests to the shared GCOV workflow.

Changes

Binlog CI workflow coverage

Layer / File(s) Summary
Reusable binlog workflow delegation
.github/workflows/ci-legacy-binlog-g1.yml, .github/workflows/ci-mysql90-binlog-g1.yml, .github/workflows/ci-mysql95-binlog-g1.yml
Each workflow accepts a trigger, grants the required permissions, and delegates the matching binlog test group and infrastructure identifier to ci-ai-gcov.yml.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to ef455

This change adds three CI workflow entry points for existing binlog groups; no actionable merge-blocking risk remains after normal checks and review.

Sequence Diagram(s)

sequenceDiagram
  participant GitHubActions
  participant BinlogWorkflows
  participant ci_ai_gcov
  participant BinlogTests
  GitHubActions->>BinlogWorkflows: provide trigger
  BinlogWorkflows->>ci_ai_gcov: delegate tap group and infrastructure ID
  ci_ai_gcov->>BinlogTests: run configured binlog tests
Loading

Possibly related PRs

Poem

A rabbit sees three workflows hop,
With triggers set and tests on top.
Legacy, nine-oh, nine-five align,
Through shared GCOV they run fine.
Group one bounds through CI bright.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Linked Issues check ⚠️ Warning The workflows satisfy the CI coverage follow-up in #6092, but they do not address the reported mysqlbinlog runtime failure. Add the command -v fallback in run-tests-isolated.bash so mysqlbinlog remains available at runtime.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the addition of reusable workflows for all three binlog groups.
Out of Scope Changes check ✅ Passed The three workflow additions directly match the CI coverage follow-up listed in #6092, with no unrelated changes shown.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/ghactions-binlog-shards

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.

@gitar-bot

gitar-bot Bot commented Aug 16, 2026

Copy link
Copy Markdown
Code Review ✅ Approved

Adds reusable CI workflow shims for legacy-binlog-g1, mysql90-binlog-g1, and mysql95-binlog-g1 to extend test coverage. No issues found.

Options

Auto-apply is off → Gitar will not commit updates to this branch.
Display: compact → Showing less information.

Comment with these commands to change the behavior for this request:

Auto-apply Compact
gitar auto-apply:on         
gitar display:verbose         

Important

Your trial ends in 7 days — upgrade now to keep code review, CI analysis, auto-apply, custom automations, and more.

Was this helpful? React with 👍 / 👎 | Gitar

@renecannao
renecannao merged commit fb57731 into GH-Actions Aug 16, 2026
3 checks passed
renecannao added a commit that referenced this pull request Aug 16, 2026
… is merged

The v3.0 callers for legacy-binlog-g1 / mysql90-binlog-g1 /
mysql95-binlog-g1 in this branch reference
sysown/proxysql/.github/workflows/ci-<group>.yml@GH-Actions, which
only exist on GH-Actions since PR #6093 landed. The previous CI run
on this branch failed at workflow-resolution time because the
reusables weren't there yet; an empty commit re-runs CI against the
now-complete state.
@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
C Security Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

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.

1 participant