-
Notifications
You must be signed in to change notification settings - Fork 53
👻 fixing the actions for real this time #1029
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Signed-off-by: Shawn Hurley <[email protected]>
WalkthroughThe pull request reconfigures GitHub Actions workflows to centralize tag computation. A new Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes
Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
.github/workflows/image-build.yaml (1)
17-17: Consider removing the unusedtagenvironment variable.The
tagenvironment variable defined at line 17 appears to be unused; the newcompute-deps-refsjob output has replaced its role. Removing it would clarify that tag computation is now centralized. As a note: the bash string substitution on line 29 usesGITHUB_REF_NAMErather thangithub.ref, which could unexpectedly substitute "main" within branch names like "main-dev" (though this is unlikely in practice and maintains consistency with the old approach).
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
.github/workflows/image-build.yaml(3 hunks).github/workflows/java-provider-image-build.yaml(2 hunks).gitignore(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📚 Learning: 2025-10-22T21:43:47.223Z
Learnt from: jmle
Repo: konveyor/analyzer-lsp PR: 934
File: .github/workflows/image-build.yaml:64-64
Timestamp: 2025-10-22T21:43:47.223Z
Learning: In .github/workflows/image-build.yaml, using ${{ matrix.images.extra-args }} is valid: GitHub Actions allows hyphenated keys with dot notation, there is no '-' operator, and missing properties evaluate to an empty string (no fallback needed).
Applied to files:
.github/workflows/image-build.yaml
📚 Learning: 2025-12-02T02:57:09.802Z
Learnt from: tsanders-rh
Repo: konveyor/analyzer-lsp PR: 1004
File: external-providers/java-external-provider/go.mod:49-50
Timestamp: 2025-12-02T02:57:09.802Z
Learning: In the konveyor/analyzer-lsp monorepo, all external providers (java-external-provider, dotnet-external-provider, generic-external-provider) include a `replace github.com/konveyor/analyzer-lsp => ../../` (or `../..`) directive in their go.mod files. This replace directive is the established pattern for local development within the monorepo and allows providers to reference the local analyzer-lsp module. When providers are built outside the repository, the versioned dependency declared in the require block is used instead.
Applied to files:
.github/workflows/image-build.yaml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (12)
- GitHub Check: build-all-providers (generic, generic-provider, external-providers/generic-external-provider/Dock...
- GitHub Check: build-all-providers (c-sharp, c-sharp-provider, Dockerfile, konveyor/c-sharp-analyzer-provider, f...
- GitHub Check: build-all-providers (yq, yq-provider, external-providers/yq-external-provider/Dockerfile, true)
- GitHub Check: build-all-providers (java, java-provider, external-providers/java-external-provider/Dockerfile, J...
- GitHub Check: test (ubuntu-latest, linux, amd64)
- GitHub Check: test (macos-latest, darwin, arm64)
- GitHub Check: test (ubuntu-latest, linux, arm64)
- GitHub Check: test (macos-latest, darwin, amd64)
- GitHub Check: test (windows-latest, windows, amd64)
- GitHub Check: benchmark (macos-latest, mac)
- GitHub Check: benchmark (ubuntu-latest, linux)
- GitHub Check: benchmark (windows-latest, windows)
🔇 Additional comments (4)
.gitignore (1)
37-39: LGTM!Adding
.secretsfor Act integration is a standard practice. No concerns..github/workflows/image-build.yaml (2)
20-31: Centralized tag computation viacompute-deps-refsoutput looks good.The new
tagoutput complements the existingjava-bundle-tagoutput, and downstream jobs now referenceneeds.compute-deps-refs.outputs.taginstead of local environment variables, which improves consistency and clarity.
72-90: Dependency graph correctly updated for downstream jobs.Both
generic-external-provider-buildandanalyzer-windows-buildnow depend oncompute-deps-refsto access the centralizedtagoutput. The job ordering ensures the computed tag is available before downstream use..github/workflows/java-provider-image-build.yaml (1)
16-17: Verify thatrebuild-java-providerdispatchers provide requiredclient_payloadfields.This workflow switched from
github.event.reftogithub.event.client_payload.refandgithub.event.client_payload.ref_name. Repository dispatch events require callers to explicitly include these fields in theclient-payloadJSON. If upstream dispatchers omitclient_payload.reforclient_payload.ref_name, the tag determination silently falls back to "latest" (line 17), masking dispatcher errors.Verify:
- All workflows triggering the
rebuild-java-providerevent includeclient_payload.refandclient_payload.ref_namein their dispatch payload- The
reffield format matches expectations (e.g.,refs/heads/mainvs branch name only)- Line 29's use of
client_payload.refreceives valid values from all callers
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.