Skip to content

Conversation

@nitisht
Copy link
Member

@nitisht nitisht commented Jan 3, 2026

Updated the runner version for multiple jobs in the release workflow to ubuntu-22.04.
This is need to ensure runtime dependencies like glibc are not broken at runtime when
the binary is run on a new machine.

Summary by CodeRabbit

  • Chores
    • Updated build infrastructure to use a specific Ubuntu version across multiple deployment jobs for improved consistency and reproducibility.

✏️ Tip: You can customize this high-level summary in your review settings.

Updated the runner version for multiple jobs in the release workflow to ubuntu-22.04.

Signed-off-by: Nitish Tiwari <nitish@parseable.com>
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 3, 2026

Walkthrough

Updated three GitHub Actions runner specifications in the release workflow from ubuntu-latest to ubuntu-22.04 in the build-linux, build-kafka-linux, and create-checksum jobs. This pins the workflow to a specific Ubuntu version rather than using the latest available version.

Changes

Cohort / File(s) Summary
GitHub Actions Runner Pinning
.github/workflows/release.yml
Updated runner OS specifications from ubuntu-latest to ubuntu-22.04 in three jobs: build-linux, build-kafka-linux, and create-checksum. No changes to job logic, steps, or error handling.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

Poem

🐰 A rabbit hops with joy so bright,
Ubuntu twenty-two's locked tight,
No more surprises from the latest,
Stability makes us the greatest!
Workflows run both fast and true,

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description check ❓ Inconclusive The PR description is present and provides context, but does not follow the required template structure with Description section, rationale, and checklist items. Please restructure the description to follow the template: add a Description section with goal/rationale, clearly document key changes, and include the completion checklist items for testing and documentation.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The pull request title directly and clearly summarizes the main change: updating runner versions to ubuntu-22.04 in the release.yml file.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings

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
Contributor

@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: 0

🧹 Nitpick comments (2)
.github/workflows/release.yml (2)

325-325: Consistent pinning across Linux jobs.

Good consistency with the other Linux build jobs. Note that Windows and macOS jobs still use -latest runners. Consider whether those should also be pinned for complete reproducibility, or document if the current mixed approach is intentional.


23-23: Consider documenting the runner version pinning strategy.

This PR pins Linux runners to ubuntu-22.04 while leaving Windows and macOS on -latest. Consider:

  1. Documenting the rationale: Add a comment explaining why Linux is pinned (e.g., stability requirements, dependency concerns) while other platforms float
  2. Maintenance plan: Ubuntu 22.04 LTS support ends in April 2027. Set up a reminder to evaluate migration to ubuntu-24.04 or later versions
  3. Monitoring: Watch for security advisories or deprecation notices from GitHub Actions regarding ubuntu-22.04
  4. Testing: Consider testing against ubuntu-24.04 periodically to prepare for future migration

Also applies to: 175-175, 325-325

📜 Review details

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between e91606f and df7e68a.

📒 Files selected for processing (1)
  • .github/workflows/release.yml
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: nikhilsinhaparseable
Repo: parseablehq/parseable PR: 1302
File: .github/workflows/build.yaml:170-175
Timestamp: 2025-04-26T03:58:02.341Z
Learning: In the parseable project, the Linux-specific environment variables (PKG_CONFIG_PATH, SASL2_DIR, OPENSSL_DIR, OPENSSL_ROOT_DIR, SASL2_STATIC) in the Kafka build step of GitHub Actions workflows don't cause issues for macOS builds and can safely be applied to both platforms.
📚 Learning: 2025-04-26T03:58:02.341Z
Learnt from: nikhilsinhaparseable
Repo: parseablehq/parseable PR: 1302
File: .github/workflows/build.yaml:170-175
Timestamp: 2025-04-26T03:58:02.341Z
Learning: In the parseable project, the Linux-specific environment variables (PKG_CONFIG_PATH, SASL2_DIR, OPENSSL_DIR, OPENSSL_ROOT_DIR, SASL2_STATIC) in the Kafka build step of GitHub Actions workflows don't cause issues for macOS builds and can safely be applied to both platforms.

Applied to files:

  • .github/workflows/release.yml
⏰ 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). (9)
  • GitHub Check: Build Default x86_64-pc-windows-msvc
  • GitHub Check: Build Default x86_64-unknown-linux-gnu
  • GitHub Check: Build Default aarch64-unknown-linux-gnu
  • GitHub Check: Build Default aarch64-apple-darwin
  • GitHub Check: Build Kafka x86_64-unknown-linux-gnu
  • GitHub Check: Build Kafka aarch64-apple-darwin
  • GitHub Check: Quest Smoke and Load Tests for Distributed deployments
  • GitHub Check: Quest Smoke and Load Tests for Standalone deployments
  • GitHub Check: coverage
🔇 Additional comments (2)
.github/workflows/release.yml (2)

175-175: Version pinning is especially valuable here given the complex dependencies.

The Kafka build job has numerous system dependencies (gcc-11, g++-11, cmake, zlib, zstd, lz4, openssl) that could vary across Ubuntu versions. Pinning to ubuntu-22.04 ensures these dependencies remain consistent and available.


23-23: Good choice to pin to Ubuntu 22.04 LTS for reproducibility.

Pinning the runner to a specific Ubuntu LTS version improves build reproducibility and prevents unexpected breakages when ubuntu-latest is updated. Ubuntu 22.04 LTS is actively supported by GitHub Actions with recent image releases and is appropriate for stable release builds.

@nitisht nitisht merged commit c8746a6 into main Jan 3, 2026
12 checks passed
@nitisht nitisht deleted the nitisht-patch-1 branch January 3, 2026 10:17
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.

2 participants