scylladb / java-driver

ScyllaDB Java Driver for ScyllaDB and Apache Cassandra, based on the DataStax Java Driver
Apache License 2.0
61 stars 37 forks source link

Release workflow for 4.x branch #310

Closed Bouncheck closed 3 months ago

Bouncheck commented 3 months ago

port of 3.x version (#303)

Bouncheck commented 3 months ago

I've removed <deployAtEnd>true</deployAtEnd> part. I did not notice that before, but when editing this through IDE I've received a warning that this is not applicable there. I am assuming removal does not make a difference.

Bouncheck commented 3 months ago

@benipeled does this look right? Should we have if: ${{ github.event.inputs.dryrun == 'false' }} before release:perform step too? If I understand correctly if we don't add it here then dryrun will also perform a release, since for 4.x version auto closing works and then auto release is performed. 3.x currently does not auto close, but maybe such guard should be there too? Just in case auto closing is ever solved.

benipeled commented 3 months ago

I've removed <deployAtEnd>true</deployAtEnd> part. I did not notice that before, but when editing this through IDE I've received a warning that this is not applicable there. I am assuming removal does not make a difference.

The idea is to stay on the safe side for cases where the build fails and avoid posting part of the build, I'm not sure based on what the IDE warns about it - I'd not remove it but I'll leave it to your decision

benipeled commented 3 months ago

@benipeled does this look right? Should we have if: ${{ github.event.inputs.dryrun == 'false' }} before release:perform step too? If I understand correctly if we don't add it here then dryrun will also perform a release, since for 4.x version auto closing works and then auto release is performed. 3.x currently does not auto close, but maybe such guard should be there too? Just in case auto closing is ever solved.

You're right, on v4 we need it also for the release:perform stage

Bouncheck commented 3 months ago

I'm not sure based on what the IDE warns about it - I'd not remove it but I'll leave it to your decision

I've tried looking for it in source and it seems there is no such property for maven-release-plugin. However github search sometimes fails me or maybe this propagates further to deploy plugin somehow, so I'll leave it added. Worst case it's a no-op.

Bouncheck commented 3 months ago

I've added the if and deployAtEnd again. Since it seems the 4.x branch does not suffer from issues with nexus-staging-maven-plugin (at least for now) I guess we can proceed with merge and running the workflow (actual and dryrun).

benipeled commented 3 months ago

I'm not sure based on what the IDE warns about it - I'd not remove it but I'll leave it to your decision

I've tried looking for it in source and it seems there is no such property for maven-release-plugin. However github search sometimes fails me or maybe this propagates further to deploy plugin somehow, so I'll leave it added. Worst case it's a no-op.

https://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html#deployAtEnd

Bouncheck commented 3 months ago

I've moved deployAtEnd from the release plugin to the configuration of the deploy plugin. Let's see if the workflow is now available to run for 4.x branch

benipeled commented 3 months ago

I've moved deployAtEnd from the release plugin to the configuration of the deploy plugin. Let's see if the workflow is now available to run for 4.x branch

I see that you manually triggered on dryrun mode - it works - now we need to make sure it works on the next release https://github.com/scylladb/java-driver/actions/runs/9584592922

Bouncheck commented 3 months ago

It seems we need to replace current authentication information with the token. Otherwise it will keep failing with 401. I don't have the perms to access repo secrets.