TIL how to run a Tailscale exit node on an Apple TV and route traffic through it from a scraper running in GitHub Actions... necessary because the doge.gov site's Cloudflare blocks scrapers from GitHub's IP range: https://til.simonwillison.net/tailscale/tailscale-github-actions
@simon very neat! I've been running as a cron job on a local machine, but am trying this out instead.
Tiny suggestion: a comma after the JSON tag configuration block is useful, as the default config has blocks after it
@simon Also I had to set the json config *before* creating the oauth token, otherwise I didn't have a tag that was available to set
@simon I ran into this issue trying to get your github action working: https://github.com/tailscale/github-action/issues/123 , trying this suggestion to make it work: https://github.com/tailscale/github-action/issues/123#issuecomment-2305071920
@simon I also needed to add the `auth_keys` scope, as per the tailscale github action doc: https://github.com/tailscale/github-action?tab=readme-ov-file#tailscale-github-action
@llimllib oops I'll add that
@simon Here's the two-step tailscale action I ended up with, than ran in just a few seconds: https://github.com/llimllib/nba_data/blob/main/.github/workflows/dl.yml#L18-L33
Thank you this will simplify my scraping setup quite a bit!
@llimllib oh neat! I had to use the exit node IP because the name wouldn't resolve that early