mirror of
				https://github.com/juanfont/headscale.git
				synced 2025-11-04 01:51:04 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			30 lines
		
	
	
		
			696 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			696 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package integration
 | 
						|
 | 
						|
import (
 | 
						|
	"net/netip"
 | 
						|
	"net/url"
 | 
						|
 | 
						|
	"github.com/juanfont/headscale/integration/tsic"
 | 
						|
	"tailscale.com/ipn/ipnstate"
 | 
						|
)
 | 
						|
 | 
						|
// nolint
 | 
						|
type TailscaleClient interface {
 | 
						|
	Hostname() string
 | 
						|
	Shutdown() error
 | 
						|
	Version() string
 | 
						|
	Execute(command []string) (string, string, error)
 | 
						|
	Up(loginServer, authKey string) error
 | 
						|
	UpWithLoginURL(loginServer string) (*url.URL, error)
 | 
						|
	Logout() error
 | 
						|
	IPs() ([]netip.Addr, error)
 | 
						|
	FQDN() (string, error)
 | 
						|
	Status() (*ipnstate.Status, error)
 | 
						|
	WaitForReady() error
 | 
						|
	WaitForLogout() error
 | 
						|
	WaitForPeers(expected int) error
 | 
						|
	Ping(hostnameOrIP string, opts ...tsic.PingOption) error
 | 
						|
	Curl(url string, opts ...tsic.CurlOption) (string, error)
 | 
						|
	ID() string
 | 
						|
}
 |