Skip to content
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

Ensure builds respect split-DNS configurations on MacOS #9224

Closed
AaronFriel opened this issue Mar 16, 2022 · 5 comments
Closed

Ensure builds respect split-DNS configurations on MacOS #9224

AaronFriel opened this issue Mar 16, 2022 · 5 comments
Assignees
Labels
kind/bug Some behavior is incorrect or out of spec resolution/fixed This issue was fixed

Comments

@AaronFriel
Copy link
Member

AaronFriel commented Mar 16, 2022

See:

And this helpful comment: golang/go#12524 (comment)

We may want to build our MacOS binaries on Intel (x86-64) and then cross-compile with a flag (CGO_ENABLED=1) to ensure that DNS resolution uses the host/libc DNS.

For our other platforms, building natively or cross-compiling from Linux with CGO_ENABLED=0 should provide full coverage of our supported platforms.

@AaronFriel AaronFriel added the kind/bug Some behavior is incorrect or out of spec label Mar 16, 2022
@guineveresaenger
Copy link
Contributor

related user issue: pulumi/pulumi-aws#2185

@AaronFriel
Copy link
Member Author

AaronFriel commented Oct 21, 2022

I've since changed my mind on this. This issue should be closed because we do do this for Pulumi/Pulumi CLI builds, but I am certain this is a mistake for us to apply everywhere and I would very much like to not require it here (on the Pulumi CLI repository.).

  1. While GitHub makes macOS CI relatively easy, not every CI tool does. Even if we solve this for ourselves, we will leave our third party providers with fundamentally broken macOS binaries.
  2. The limited number of macOS runners can cause a small # of updates to providers to result in an organization-wide CI outage.
  3. As a Go project team member wrote, cgo is not go, and can greatly complicate our support for providers.

If we want to greatly expand our third party ecosystem, I think we need to press the Go team to take up golang/go#12524, and resolve to fix up golang/go#30686.

@abhinav abhinav mentioned this issue Feb 1, 2023
1 task
@abhinav
Copy link
Contributor

abhinav commented Feb 4, 2023

Update: per discussion with @AaronFriel, Go 1.20 helps this.

#12051 attempts to switch to ubuntu-latest build machines for macOS builds. That has a green "bors try".

@AaronFriel
Copy link
Member Author

This should be closable now, I checked that the latest draft release is built on 1.20. I don't see any indication the upstream CL on Go was reverted.

@justinvp justinvp added the resolution/fixed This issue was fixed label Sep 30, 2023
@justinvp justinvp self-assigned this Sep 30, 2023
@justinvp
Copy link
Member

I believe this is now fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Some behavior is incorrect or out of spec resolution/fixed This issue was fixed
Projects
None yet
Development

No branches or pull requests

4 participants