-
Notifications
You must be signed in to change notification settings - Fork 162
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows MSI #157
Comments
We used to, but not anymore since we moved to releasing with goreleaser on the open-telemetry/opentelemetry-collector-releases repostiory. We don't seem to have a volunteer to work on that. |
@jpkrohling do we want to add an MSI back? Should we open an issue for it? |
I believe there might be an issue with this already, just not sure where. But yes, we want this back. The problem from what I remember is that it requires a cert to sign the binary and we don't have it. |
Should we transfer this to the releases repository? |
Done |
@jpkrohling I may be willing to research and work on this. What is the build system used to create the releases? GitHub Actions seems to have a ton of steps defined. |
We use goreleaser for automating our build. Look at .goreleaser.yaml at the root of this repository, and goreleaser.io for more information about the tool itself. Our .goreleaser.yaml is auto-generated, but I'd recommend playing directly with that file at first, and then bringing the changes back to the Go files that generate it (cmd/goreleaser/internal/configure.go) |
Hey, just one quick note/good news: looks like goreleaser pro (version this repo uses) supports creating MSIs: |
Creating it is the easy part, maintaining is something more: it requires people who'd be willing to take care of bug reports. Ideally, that would be a maintainer, but if someone active enough volunteers to take care of this build, I think we can give it a try. |
Would be great to have someone with Windows expertise listed on here https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/platform-support.md#tier-2--secondary-support |
@mx-psi I volunteer myself for tier 2 support for Windows/amd64 |
Awesome! I am in favor of proceeding with this then :) cc @open-telemetry/collector-contrib-approvers |
What exactly should be updated there @TylerHelmuth? Do you mean to add the requirement to build Windows MSI package to point 7.? Btw. to be honest I'm surprised that the requirement for brew packages is there - I don't think we publish brew packages for Otelcol core or contrib at all? Here's a related issue I found: |
@astencel-sumo ya lets update I forget the origin of that |
You're saying "allowed" but point 7 uses the word "must":
I'll add Windows MSI to that list for now, we can separately consider if we should rephrase this point to make it less demanding. We currently don't provide brew or MSI for any distro. EDIT: Oh I just re-read and found that phrase "Additional assets may be included", hm I'm not sure how this changes the meaning of this whole point 7 🤔 |
Ya maybe this doesn't need updated because of that line, but I think if we're gonna support Windows, providing an MSI as an expectation (unless otherwise specified) makes sense. |
I would also love to see MSI support. I have built MSIs before and added support for them to existing projects, though it sounds like that won't be needed manually since you have a version of goreleaser with built-in support which is great. |
Four aspects that come to my mind related to releasing an MSI:
I’m planning to go ahead and open a new item on the collector repo to discuss item 1 and we can keep the conversation about 2 here. |
On a new version of this PR, we should ensure the tests in PR actually test that producing an MSI works in an actual release. |
@mx-psi @jpkrohling there are two follow-ups, mentioned in the original #560 description, that I'm planning to do in a near future:
We can close the present issue now or wait for a successful release of the MSIs. |
@pjanotti I agree, I've written tests for MSI builds before in CI (GitHub Actions), it's important to test install, uninstall, reinstall, upgrade, etc. After the first release with an MSI it's possible to test for example, upgrading from current latest. Here is an older example: I did more extensive work last year for another project based on this but it's in a private repository and I can't share it, above still covers the gist of it. The tests themselves happen to be written in Pester since PowerShell is convenient for testing the things that needed testing, but they don't have to be. |
@pjanotti Let's either keep this open or open separate issues for the remaining steps |
Awesome, I am closing this one then :) |
Is there a windows msi installer release for the collector?
The text was updated successfully, but these errors were encountered: