Documentation
      ¶
    
    
  
    
  
    Index ¶
- Constants
 - func Clear(path string) (err error)
 - func NewContext(ctx context.Context, cfg *Config) context.Context
 - func SetAccessToken(path, token string) error
 - func SetAutoUpdate(path string, autoUpdate bool) error
 - func SetMetricsToken(path, token string) error
 - func SetSendMetrics(path string, sendMetrics bool) error
 - type Config
 
Constants ¶
const ( // FileName denotes the name of the config file. FileName = "config.yml" AccessTokenEnvKey = envKeyPrefix + "ACCESS_TOKEN" AccessTokenFileKey = "access_token" MetricsTokenEnvKey = envKeyPrefix + "METRICS_TOKEN" MetricsTokenFileKey = "metrics_token" SendMetricsEnvKey = envKeyPrefix + "SEND_METRICS" SendMetricsFileKey = "send_metrics" AutoUpdateFileKey = "auto_update" WireGuardStateFileKey = "wire_guard_state" APITokenEnvKey = envKeyPrefix + "API_TOKEN" )
Variables ¶
This section is empty.
Functions ¶
func Clear ¶
Clear clears the access token, metrics token, and wireguard-related keys of the configuration file found at path.
func NewContext ¶
NewContext derives a Context that carries the given Config from ctx.
func SetAccessToken ¶
SetAccessToken sets the value of the access token at the configuration file found at path.
func SetAutoUpdate ¶ added in v0.1.51
SetAutoUpdate sets the value of the autoupdate flag at the configuration file found at path.
func SetMetricsToken ¶ added in v0.0.541
SetMetricsToken sets the value of the metrics token at the configuration file found at path.
func SetSendMetrics ¶ added in v0.1.5
SetSendMetrics sets the value of the send metrics flag at the configuration file found at path.
Types ¶
type Config ¶
type Config struct {
	// APIBaseURL denotes the base URL of the API.
	APIBaseURL string
	// FlapsBaseURL denotes base URL for FLAPS (also known as the Machines API).
	FlapsBaseURL string
	// MetricsBaseURL denotes the base URL of the metrics API.
	MetricsBaseURL string
	// RegistryHost denotes the docker registry host.
	RegistryHost string
	// VerboseOutput denotes whether the user wants the output to be verbose.
	VerboseOutput bool
	// JSONOutput denotes whether the user wants the output to be JSON.
	JSONOutput bool
	// LogGQLErrors denotes whether the user wants the log GraphQL errors.
	LogGQLErrors bool
	// SendMetrics denotes whether the user wants to send metrics.
	SendMetrics bool
	// AutoUpdate denotes whether the user wants to automatically update flyctl.
	AutoUpdate bool
	// Organization denotes the organizational slug the user has selected.
	Organization string
	// Region denotes the region slug the user has selected.
	Region string
	// LocalOnly denotes whether the user wants only local operations.
	LocalOnly bool
	// AccessToken denotes the user's access token.
	AccessToken string
	// MetricsToken denotes the user's metrics token.
	MetricsToken string
	// contains filtered or unexported fields
}
    Config wraps the functionality of the configuration file.
Instances of Config are safe for concurrent use.
func FromContext ¶
FromContext returns the Config ctx carries. It panics in case ctx carries no Config.
func (*Config) ApplyEnv ¶
func (cfg *Config) ApplyEnv()
ApplyEnv sets the properties of cfg which may be set via environment variables to the values these variables contain.
ApplyEnv does not change the dirty state of config.
func (*Config) ApplyFile ¶
ApplyFile sets the properties of cfg which may be set via configuration file to the values the file at the given path contains.
func (*Config) ApplyFlags ¶
ApplyFlags sets the properties of cfg which may be set via command line flags to the values the flags of the given FlagSet may contain.