Skip to content

Conversation

@gagan405
Copy link
Contributor

@gagan405 gagan405 commented Dec 8, 2025

  1. Ports CI scripts from java client package
  2. Added Sonatype publish / delete workflow
  3. Modified snapshot checking logic : is-snapshot not available from build info
  4. Modified scripts to work with non-matrix manner - we just have 1 artifact
  5. Modified scripts to handle all hierarchy of the artifacts: parent and child artifacts
  6. Modified the versioning logic - if no tag - snapshot

Testing:

Tested with commenting out all portions that could alter anything anywhere.
Latest can be seen here: https://github.com/aerospike/aerospike-client-java-reactive/actions/runs/20125452454/job/57754079729

The workflow is failing at later stages as it doesn't exist in main branch.

Actual run

First: a build and release should run on pushing to stage -> that should publish to internal JFrog
Second: when the build is done, manually this promote workflow can be triggered after adding a release tag to the stage branch

@gagan405 gagan405 self-assigned this Dec 8, 2025
@gagan405 gagan405 marked this pull request as draft December 8, 2025 21:03
@gagan405 gagan405 requested a review from mirzakaracic December 8, 2025 21:14
Copy link

@mirzakaracic mirzakaracic left a comment

Choose a reason for hiding this comment

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

I think this is great stab at it and should get you to release packages. The aerospike-client-java-reactive project is following similar dev workflow for shipping as most other clients other than python, that is PR -> stage -> main.

@gagan405 gagan405 force-pushed the CLIENT-3872-add-ci-scripts branch from b5df09f to cad18b9 Compare December 9, 2025 22:05
@gagan405 gagan405 marked this pull request as ready for review December 11, 2025 20:21
sign-artifacts:
needs: [build-packages, extract-version]
uses: aerospike/shared-workflows/.github/workflows/reusable_sign-artifacts.yaml@1c93424fa30c040b8420f4c3a5533b030bdc3865
uses: aerospike/shared-workflows/.github/workflows/reusable_sign-artifacts.yaml@main
Copy link

@mirzakaracic mirzakaracic Dec 11, 2025

Choose a reason for hiding this comment

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

suggestion: take commit hash/branch name after workflow name

Would be possible to leave everything after the filename, aka @<version/branch name> since we have gh-workflows-ref? I have not tested this my self but seems repetitive to have the same information twice. It makes it confusing and error prone to have the same information in two different places.

Copy link
Contributor Author

@gagan405 gagan405 Dec 11, 2025

Choose a reason for hiding this comment

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

Looks like we cannot omit it, since it is from a different repository. Based on the docs:

https://docs.github.com/en/actions/how-tos/reuse-automations/reuse-workflows#calling-a-reusable-workflow

You reference reusable workflow files using one of the following syntaxes:

{owner}/{repo}/.github/workflows/{filename}@{ref} for reusable workflows in public and private repositories.
./.github/workflows/{filename} for reusable workflows in the same repository.

In the first option, {ref} can be a SHA, a release tag, or a branch name. If a release tag and a branch have the same name, the release tag takes precedence over the branch name. Using the commit SHA is the safest option for stability and security. For more information, see Secure use reference.

Copy link

@mirzakaracic mirzakaracic left a comment

Choose a reason for hiding this comment

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

Looks good other than the commit hashes.

@mirzakaracic
Copy link

There is also a failing test.
https://github.com/aerospike/aerospike-client-java-reactive/actions/runs/20146087249/job/57826769359?pr=64

Could it be wrong project?

@gagan405
Copy link
Contributor Author

There is also a failing test. https://github.com/aerospike/aerospike-client-java-reactive/actions/runs/20146087249/job/57826769359?pr=64

Could it be wrong project?

This is expected. The correct URL expects a build number, like this:

API_PATH="/api/build/aerospike-client-java-reactive/42?project=database"

I was trying with enforcing the workflow to run on PR, with some hardcoded build number.

It can be ignored now.

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