util/cloudenv: add support for DigitalOcean

Updates #4984

Signed-off-by: Andrew Dunham <andrew@du.nham.ca>
Change-Id: Ib229eb40af36a80e6b0fd1dd0cabb07f0d50a7d1
This commit is contained in:
Andrew Dunham
2024-02-09 18:16:33 -05:00
parent 55b372a79f
commit c1c50cfcc0
2 changed files with 59 additions and 3 deletions

View File

@ -0,0 +1,29 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause
package cloudenv
import (
"flag"
"net/netip"
"testing"
)
var extNetwork = flag.Bool("use-external-network", false, "use the external network in tests")
// Informational only since we can run tests in a variety of places.
func TestGetCloud(t *testing.T) {
if !*extNetwork {
t.Skip("skipping test without --use-external-network")
}
cloud := getCloud()
t.Logf("Cloud: %q", cloud)
t.Logf("Cloud.HasInternalTLD: %v", cloud.HasInternalTLD())
t.Logf("Cloud.ResolverIP: %q", cloud.ResolverIP())
}
func TestGetDigitalOceanResolver(t *testing.T) {
addr := netip.MustParseAddr(getDigitalOceanResolver())
t.Logf("got: %v", addr)
}