warmuuh / milkman

An Extensible Request/Response Workbench
MIT License
1.15k stars 75 forks source link

Add Chocolatey Package. #24

Closed aadrian closed 5 years ago

aadrian commented 5 years ago

Please add a Chocolatey Package. This makes it very easy to use the project on Windows.

See https://chocolatey.org/packages/postman

Thank you.

digitalcoyote commented 5 years ago

I'd be willing to make one. I just dug my teeth into chocolatey's auto updater ( takes the pain out of maintaining packages).

warmuuh commented 5 years ago

Would appreciate it. What does that mean for me on a new release? Would it be possible to tie it into the mvn build process?

aadrian commented 5 years ago

@warmuuh

What does that mean for me on a new release?

Mostly only a hash and a url is required to be able to have a Chocolatey install script.

Would it be possible to tie it into the mvn build process?

This is the tool used to build and update Chocolate packages: https://github.com/majkinetor/au Maven should be able to call that tool.

AFAIK however, it needs Windows (since it's powershell based). Your are already using Travis CI, so it should be possible to perform that step there https://docs.travis-ci.com/user/reference/windows/

digitalcoyote commented 5 years ago

Actually, using the au-package template, it would mean no extra steps on release. Hash is generated based on the existing download.

Chocolatey's suggested method of doing this is just a separate repo that watches for a new version to be released and then generated the package for based on the released binaries.

digitalcoyote commented 5 years ago

Almost done with initial package. Once I get it in the chocolatey review queue, I'll ready a PR request with installation instructions for users who wish to use chocolatey.

digitalcoyote commented 5 years ago

@warmuuh am I overlooking a download location for plugin binaries? I'd like to make them their own packages so a user could install those with chocolatey as well (they would have a dependency on the main milkman package). If they are normally only provided from source, I can work with that as well, just less steps if they are pre-built.

warmuuh commented 5 years ago

There is a download for every release: https://github.com/warmuuh/milkman/releases/download/3.6.0/milkman-dist-plugins-bin.zip. Or do you need a separate download for each plugin?

digitalcoyote commented 5 years ago

My goal is to not require any changes to your current release process. I can handle that zip file in the updater script and still publish packages for each plugin (and a meta-package that contains them all).

digitalcoyote commented 5 years ago

@warmuuh I have the package code created, but I am still awaiting approval. It is in a state however that I can start adding you as a maintainer to the packages if you desire (gives you some management access and lends credibility to the package but by no means required). If you are up to it, create a Chocolatey package and let me know the username so I can add it. Otherwise, it's all waiting on Chocolatey moderators to review the packages. PR is ready to submit, but I'm holding off til the packages are publicly available.

warmuuh commented 5 years ago

Just go ahead and I gonna contact you later for adding me as a maintainer. I have only limited access to internet for next two weeks, so I cannot do much currently... Awesome work though, thx.

warmuuh commented 5 years ago

ok. i am back from vacations ;) i have setup an account: https://chocolatey.org/profiles/warmuuh what else do i need to do for you to be able to continue?

digitalcoyote commented 5 years ago

It's still in moderation at the moment. I'll add you as a maintainer and then we wait. Moderation for new packages can take a bit apparently.

warmuuh commented 5 years ago

@digitalcoyote it looks like the package is released?

digitalcoyote commented 5 years ago

It's available. I submitted a PR with install instructions for the readme.

digitalcoyote commented 5 years ago

If it is ever decided it is necessary, we can push the nightly builds as prelease versions as well (you have to pass an argument to install a pre-release version).

warmuuh commented 5 years ago

just wanted to thank you to follow up until the end of this. I suspect this to have been quite some work. Thanks for the investment. regarding the preprelease, i think, that is not (yet) necessary. maybe once there is a heavy demand for this.