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

MacOS: Build open source tailscale binaries #142

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

gurchik
Copy link

@gurchik gurchik commented Oct 27, 2024

Add MacOS support by building the open source tailscale binaries.

This is similar to #103 except it builds the Go project manually from the instructions on Github.

Of course, this requires us to first install Go, which is regrettable as it may break some people's workflow, but I don't see any other way until Tailscale provides these binaries themselves. Setting up Go and building the binaries takes about 30 seconds, which isn't great but not terrible.

I am currently using this on macos-latest and it is working as expected, but it may be possible that the DNS configuration does not work for some versions of MacOS. If desired, you can add more versions of MacOS to test.

if: ${{ runner.os == 'macOS' }}
shell: bash
run:
networksetup -setdnsservers "Ethernet" 100.100.100.100
Copy link
Author

@gurchik gurchik Oct 28, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This may cause problems for users that are running a non-ephemeral (self-hosted) Mac runner after the build is over, as the DNS server of the machine will still remain set to Quad 100. Ideally the Action is using a post cleanup step to set the DNS server back. I suspect this Action already has other problems for non-ephemeral Linux runners as well. Therefore, I think adding appropriate post cleanup steps would be a future improvement. This DNS setting poses no problem for ephemeral runners.

@gurchik
Copy link
Author

gurchik commented Oct 30, 2024

Ping @willnorris

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant