cli icon indicating copy to clipboard operation
cli copied to clipboard

feat: add support for delta package uploads using go-octodiff

Open borland opened this issue 2 years ago • 8 comments

borland avatar Mar 30 '23 19:03 borland

Any chances that this will be implemented? Currently blocking us from switching from the .NET CLI

eero-dev avatar Nov 23 '23 15:11 eero-dev

Hi @eero-dev

I've had a brief chat about this internally, and while I can't promise any dates, I am planning to pick this back up again next week if I am able to.

If possible, would you consider creating an issue here requesting octodiff support, and add whatever information you feel comfortable sharing about your use-cases? (e.g. which kinds of files you upload, how big, etc)? This will help us justify the feature going forward, and help me target some tests to better help you. If you can't do this that's OK, I'll still try and move the feature forward if I can.

Thanks, Orion

borland avatar Nov 29 '23 09:11 borland

Hi @eero-dev End of year has been busy so I haven't been able to look at this. In the absence of any feedback I'll keep it at a lower priority and hope to pick up in early 2024

borland avatar Dec 12 '23 11:12 borland

Hi @eero-dev End of year has been busy so I haven't been able to look at this. In the absence of any feedback I'll keep it at a lower priority and hope to pick up in early 2024

We are using the CLI action in github to push packages to octopus whenever a new release is created, however the upload takes 10 minutes compared to 1 minute before with .NET CLI The files total around 300MB, multiple NET component projects in a monorepo

Made issue here: https://github.com/OctopusDeploy/cli/issues/303

eero-dev avatar Dec 12 '23 11:12 eero-dev

Any updates on this? github is deprecating node16 actions and our version will stop working and CI time will increase like crazy 😔

https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/

eero-dev avatar Feb 16 '24 13:02 eero-dev

Any updates on this? github is deprecating node16 actions and our version will stop working and CI time will increase like crazy

Hi @eero-dev

It's not clear what you're referring to with the node16 action?

I'm guessing you might be using our other OctopusDeploy/install-octopus-cli-action to install the legacy CLI that supports OctoDiff?

That action has been updated to support node 20, but if you're pinning an old version of it in your yaml file you may not be aware of this. Your GitHub action yaml file should be referencing v3 of the action, e.g.

uses: OctopusDeploy/install-octopus-cli-action@v3

Unfortunately I can't provide any further update on adding OctoDiff support to the Go CLI at this time

borland avatar Feb 18 '24 22:02 borland

Any updates on this? github is deprecating node16 actions and our version will stop working and CI time will increase like crazy

Hi @eero-dev

It's not clear what you're referring to with the node16 action?

I'm guessing you might be using our other OctopusDeploy/install-octopus-cli-action to install the legacy CLI that supports OctoDiff?

That action has been updated to support node 20, but if you're pinning an old version of it in your yaml file you may not be aware of this. Your GitHub action yaml file should be referencing v3 of the action, e.g.

uses: OctopusDeploy/install-octopus-cli-action@v3

Unfortunately I can't provide any further update on adding OctoDiff support to the Go CLI at this time

Any updates on this? github is deprecating node16 actions and our version will stop working and CI time will increase like crazy

Hi @eero-dev

It's not clear what you're referring to with the node16 action?

I'm guessing you might be using our other OctopusDeploy/install-octopus-cli-action to install the legacy CLI that supports OctoDiff?

That action has been updated to support node 20, but if you're pinning an old version of it in your yaml file you may not be aware of this. Your GitHub action yaml file should be referencing v3 of the action, e.g.

uses: OctopusDeploy/install-octopus-cli-action@v3

Unfortunately I can't provide any further update on adding OctoDiff support to the Go CLI at this time

Yes we are unable to switch over to a newer version as it would install the Go CLI (as stated here https://github.com/OctopusDeploy/install-octopus-cli-action/blob/main/migration-guide.md) and the upload times without octodiff are way too high.

eero-dev avatar Feb 19 '24 03:02 eero-dev

@eero-dev ah, my apologies. I missed the fact that v3 installed the new CLI. I’ll ask internally if there are any other options

borland avatar Feb 19 '24 04:02 borland

Hello everyone. We have just recently updated from old OctoCLI to a new one, and after finally resolving all migration issues we almost come to a conclusion to revert back to Octo CLI. The reason is that a part of our CI/CD pipeline is creating a really weighty (hunderds of MBs) NuGet in GH actions, which we push to our Octopus server instance, and now with the new CLI, because of delta upload functionality being unavailable, uploading of this NuGet to Octopus takes about 10min vs previous 10 seconds in Octo CLI. Any update on when we could expect the parity on this one? Thank you!

danzhik avatar Jun 14 '24 13:06 danzhik

Hi @eero-dev @danzhik

I've just released version 2.4.0 of the CLI, which adds delta compression. It is off by default, but you can enable it if you specify the --use-delta-compression flag according to the description on this PR.

I hope you find it useful!

borland avatar Jun 30 '24 21:06 borland

Great news @borland, thanks a lot! I hope to test it soon, but it seems like releases.json file still has v2.2.0 stated as the latest available, thus it's not possible to install the new version of cli using a GH action☹️

danzhik avatar Jul 01 '24 06:07 danzhik

Thanks @danzhik. I will look into releases.json sometime this week, hopefully tomorrow

borland avatar Jul 01 '24 06:07 borland

Hi @danzhik. With an assist from @IsaacCalligeros95, the releases.json should now contain the 2.4.0 version, enabling you to pull it via install-octopus-cli-action. Let me know if there are any further issues, thanks!

borland avatar Jul 02 '24 00:07 borland

Hi @borland, that's wonderful, thanks a lot! I've been really looking forward to it since v2.3.0. After a sample GH actions run, I'm happy to report that feature works as intended, huge thanks for a prompt turnover on this one! Not sure if it matches the performance of the old one for 100%, but even if not, the discrepancy is really minor and in our case can be neglected. Again, thanks for the efforts!

danzhik avatar Jul 02 '24 06:07 danzhik