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

Use Latest Version by Default #28

Open
johannesdrescher opened this issue Mar 11, 2022 · 5 comments
Open

Use Latest Version by Default #28

johannesdrescher opened this issue Mar 11, 2022 · 5 comments

Comments

@johannesdrescher
Copy link

Instead of hard coding a default version, why not use the latest version by default? This would make the action simpler to use and reduce the need for future maintenance.

GitHub Actions does not allow input defaults to be assigned dynamically. So this would have to be done by setting the version input to not required and the default to an empty string and by then inserting the latest version before download if the version input is left unspecified.

@DentonGentry
Copy link
Contributor

When people specify a particular commit in their YAML, I don't think the behavior of the action at that commit should change. It shouldn't shift over time to use new Tailscale releases.

@johannesdrescher
Copy link
Author

johannesdrescher commented Mar 11, 2022

@DentonGentry That makes sense. How about automating the replacement of the default value to always use the latest version? I wrote the code for this yesterday but discarded it because the dynamic default seemed simpler. But with this solution there would be a new commit for every Tailscale release.

@acaloiaro
Copy link
Contributor

I agree that the static version should be advanced every release rather than always using the latest version.

IMO this github action could use a Github workflow of its own that does two things:

  1. Creates a new release on merge to main
  2. Advances the version in action.yml with the new release version

@michealroberts
Copy link

michealroberts commented Nov 30, 2023

Does anyone know if this has been addressed at all?

@DentonGentry
Copy link
Contributor

I do not expect to implement this. People using this action are free to pass in a version and increment it as often as they like, but I expect the version in the base YAML to remain unchanged for long periods of time and only change when we have a meaningful reason to do so. The Action currently uses 1.42.0 because that allows use of OAuth credentials and not require authkey rotation every 90 days.

We release client updates every 4 weeks, with patch releases between. Almost none of the changes in those client releases impact use of Tailscale in an environment for CI runners. Features added for VPN and human use of the system mostly do not apply.

We maintain compatibility with Tailscale releases going far back in time. At present we still maintain interoperability with Tailscale version 0.9. A GitHub runner with Tailscale 1.42 is compatible with other nodes on the tailnet running different versions.


GitHub's hosted actions runners tend to result in mysterious behaviors, but whenever anything changes these behaviors are attributed to the thing which changed most recently. Whenever we change this GitHub action we spend the next week or two fielding support tickets for every GitHub hiccup and claiming that Tailscale must have broken it because Tailscale is the only thing which changed.

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 a pull request may close this issue.

4 participants