Skip to content

Add release workflow for kelpie - #33

Merged
feeblefakie merged 9 commits into
masterfrom
jishnu/feat/ci-release-workflow
Mar 24, 2026
Merged

Add release workflow for kelpie#33
feeblefakie merged 9 commits into
masterfrom
jishnu/feat/ci-release-workflow

Conversation

@inv-jishnu

@inv-jishnu inv-jishnu commented Mar 13, 2026

Copy link
Copy Markdown
Contributor

Description

In this PR I have added a GitHub action workflow to release kelpie to maven central repository.

Jira ticket: https://scalar-labs.atlassian.net/browse/DLT-18341

Related issues and/or PRs

Changes made

  • I have updated build.gradle and archive.gradle file
    • I have added Jreleaser to release to maven repository instead of existing publish as it was used in scalardb repository
    • I have added project block in jreleaser block to fix errors when I tested with ./gradlew jreleaserDeploy -Djreleaser.dry.run=true on my local environment as it showed missing project description and copyright.
  • I have added a workflow to release kelpie to maven central repository

Checklist

The following is a best-effort checklist. If any items in this checklist are not applicable to this PR or are dependent on other, unmerged PRs, please still mark the checkboxes after you have read and understood each item.

  • I have commented my code, particularly in hard-to-understand areas.
  • I have updated the documentation to reflect the changes.
  • Any remaining open issues linked to this PR are documented and up-to-date (Jira, GitHub, etc.).
  • Tests (unit, integration, etc.) have been added for the changes.
  • My changes generate no new warnings.
  • Any dependent changes in other PRs have been merged and published.

Additional notes (optional)

NA.

@inv-jishnu inv-jishnu self-assigned this Mar 13, 2026
@inv-jishnu
inv-jishnu marked this pull request as draft March 13, 2026 06:34
@gemini-code-assist

Copy link
Copy Markdown

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request establishes an automated release pipeline for the Kelpie project, enabling seamless deployment to Maven Central. By integrating JReleaser and a new GitHub Actions workflow, the project streamlines its distribution process, ensuring consistent and efficient publication of new versions.

Highlights

  • Release Workflow Automation: A new GitHub Actions workflow has been introduced to automate the release process of Kelpie, enabling its deployment to the Maven Central repository.
  • JReleaser Integration: JReleaser has been integrated into the build process to manage the release and deployment to Maven Central, streamlining the publication of artifacts.
  • Gradle Configuration Updates: The build.gradle and archive.gradle files were updated to support JReleaser, including plugin application, artifact ID adjustments, and repository configuration changes for automated releases.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • archive.gradle
    • Removed the signing plugin application.
    • Changed the artifactId from 'Kelpie' to 'kelpie' for consistency.
    • Replaced the manual Sonatype repository configuration with a local staging repository setup.
    • Added a comprehensive jreleaser configuration block for project details, GPG signing, and Maven Central deployment via Sonatype.
  • build.gradle
    • Applied the org.jreleaser plugin with version '1.13.1'.
    • Migrated the mainClassName property to the application.mainClass block for modern Gradle compatibility.
    • Removed the archivesBaseName property.
    • Updated the version property to conditionally use a releaseVersion project property, defaulting to "1.2.4".
    • Uncommented the line to apply archive.gradle, activating the publishing configuration.
Ignored Files
  • Ignored by pattern: .github/workflows/** (1)
    • .github/workflows/release.yaml
Activity
  • The pull request was created by inv-jishnu to add a release workflow for Kelpie.
  • The author provided a detailed description of the changes, referencing Jira ticket DLT-18341.
  • A standard checklist was included in the PR description to track completion of various development tasks.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code Review

This pull request introduces a GitHub Actions workflow to automate the release of 'kelpie' to the Maven Central repository using JReleaser. The changes involve updating build.gradle to include the JReleaser plugin and modernizing the configuration, and modifying archive.gradle to replace the previous manual publishing and signing logic with a JReleaser configuration. The implementation is solid, but I've found a minor typo in the copyright year within the JReleaser configuration that should be corrected.

Comment thread archive.gradle Outdated
@inv-jishnu inv-jishnu added the enhancement New feature or request label Mar 16, 2026
@inv-jishnu
inv-jishnu marked this pull request as ready for review March 16, 2026 10:32
@komamitsu

Copy link
Copy Markdown
Contributor

@inv-jishnu Looks like the CI test failed. Can you look into it?

@inv-jishnu

Copy link
Copy Markdown
Contributor Author

@inv-jishnu Looks like the CI test failed. Can you look into it?

@komamitsu san,

The CI failure is not related to this PR. I will create a PR to fix CI failure once the PR scalar-labs/kelpie-test#107 is merged.

@inv-jishnu

Copy link
Copy Markdown
Contributor Author

@komamitsu san,
I have created the PR #34 to fix CI failure.

@brfrn169 brfrn169 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Left several comments.

One question: Since you don’t have an account for Maven Central, you didn’t test this release workflow, right?

Comment thread build.gradle Outdated
Comment thread archive.gradle Outdated
Comment thread archive.gradle
Comment thread archive.gradle Outdated
Comment thread .github/workflows/release.yaml Outdated
Comment thread archive.gradle Outdated
Comment thread .github/workflows/release.yaml
@inv-jishnu

Copy link
Copy Markdown
Contributor Author

One question: Since you don’t have an account for Maven Central, you didn’t test this release workflow, right?

@brfrn169 san,

No I didn't test release this workflow.
I only tested the task as a dry run in my local environment for testing (to confirm build) with command ./gradlew jreleaserDeploy -Djreleaser.dry.run=true

@inv-jishnu
inv-jishnu requested a review from brfrn169 March 17, 2026 04:54

@komamitsu komamitsu left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM! 👍

@brfrn169 brfrn169 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Left a couple of additional comments. PTAL!

Comment thread .github/workflows/release.yaml Outdated
Comment thread build.gradle Outdated
@inv-jishnu
inv-jishnu requested a review from brfrn169 March 18, 2026 04:48

@brfrn169 brfrn169 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM! Thank you!

@jnmt jnmt left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM, thank you!

@feeblefakie feeblefakie left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM! Thank you!

@feeblefakie
feeblefakie merged commit 5b85f24 into master Mar 24, 2026
4 checks passed
@feeblefakie
feeblefakie deleted the jishnu/feat/ci-release-workflow branch March 24, 2026 02:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants