Skip to content

Conversation

@infeo
Copy link
Member

@infeo infeo commented Jan 22, 2026

This PR aligns the CI to other, already updated repositories (e.g. siv-mode or cryptofs).

It

@infeo infeo self-assigned this Jan 22, 2026
@coderabbitai
Copy link

coderabbitai bot commented Jan 22, 2026

Walkthrough

Updates CI workflows: introduces a global JAVA_VERSION and pins/upgrades actions in .github/workflows/build.yml, adds checksum calculation, signing/attestation, and merges Central/GitHub-package deployment and release creation into the build pipeline as downstream jobs. Removes standalone publish-central.yml and publish-github.yml workflows. Updates Java version and pins actions in codeql-analysis.yml and dependency-check.yml. Changes include workflow permission expansions, artifact provenance steps, and CHANGELOG.md notes about pinning CI actions.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title "Refactor CI" directly and clearly describes the main change: reorganizing and modernizing the CI workflows, which is the primary objective of the changeset.
Description check ✅ Passed The description comprehensively explains the key changes: merging workflows, adding attestation, pinning actions, and updating JDK, all of which are substantiated by the changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


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 and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Fix all issues with AI agents
In @.github/workflows/build.yml:
- Around line 14-18: The job-level permissions block is missing repository
contents read access so checkout will fail; update the permissions section (the
permissions: block in the build job) to include contents: read alongside
id-token: write and attestations: write so actions/checkout can read the repo
(i.e., add the contents: read permission to the permissions mapping).
- Around line 69-103: The "Enforce to use tagged version" step in the
deploy-central job uses an undefined shell variable $GIT_TAG causing
versions:set to fail; replace it with the correct GitHub Actions tag variable
(github.ref_name or the runner variable GITHUB_REF_NAME) or export it into the
step environment before calling ./mvnw; update the step referenced by its name
"Enforce to use tagged version" to use $GITHUB_REF_NAME (or set
GIT_TAG="${GITHUB_REF_NAME}" in the run block) so versions:set receives the
actual tag value.
♻️ Duplicate comments (1)
.github/workflows/build.yml (1)

104-135: Same undefined $GIT_TAG in deploy-github.
Apply the same fix as the deploy-central job.

Copy link
Member

@overheadhunter overheadhunter left a comment

Choose a reason for hiding this comment

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

if we want to make "all builds equal", we might also want to make this build reproducible? since we already use mvnw, it's a small change to the pom.xml:

  1. fix all plugin versions (including default plugins such as maven-clean-plugin)
  2. add project.build.outputTimestamp (can be an arbitrary but fixed date such as 2000-01-01)
  3. verify if two builds yield identical artifacts:
    1. ./mvnw clean install
    2. ./mvnw clean package artifact:compare -DskipTests

@infeo
Copy link
Member Author

infeo commented Jan 23, 2026

@overheadhunter Regarding reproducible builds: I want to adjust the pom in a follow-up PR. This focus solely on the CI.

@infeo infeo requested a review from overheadhunter January 23, 2026 12:33
@infeo infeo merged commit 2a82e48 into develop Jan 26, 2026
10 checks passed
@infeo infeo deleted the feature/refactor-ci branch January 26, 2026 09:26
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.

3 participants