Documentation
¶
Overview ¶
Package cbtconfig encapsulates common code for reading configuration from .cbtrc and gcloud.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶
type Config struct {
Project, Instance string // required
Creds string // optional
AdminEndpoint string // optional
DataEndpoint string // optional
CertFile string // optional
TokenSource oauth2.TokenSource // derived
TLSCreds credentials.TransportCredentials // derived
}
Config represents a configuration.
func Load ¶
Load loads a .cbtrc file. If the file is not present, an empty config is returned.
func (*Config) CheckFlags ¶
func (c *Config) CheckFlags(required RequiredFlags) error
CheckFlags checks that the required config values are set.
type GcloudCmdTokenSource ¶
func (*GcloudCmdTokenSource) Token ¶
func (g *GcloudCmdTokenSource) Token() (*oauth2.Token, error)
Token implements the oauth2.TokenSource interface
type GcloudConfig ¶
type GcloudConfig struct {
Configuration struct {
Properties struct {
Core struct {
Project string `json:"project"`
} `json:"core"`
} `json:"properties"`
} `json:"configuration"`
Credential GcloudCredential `json:"credential"`
}
func LoadGcloudConfig ¶
func LoadGcloudConfig(gcloudCmd string, gcloudCmdArgs []string) (*GcloudConfig, error)
LoadGcloudConfig retrieves the gcloud configuration values we need use via the 'config-helper' command
type GcloudCredential ¶
type GcloudCredential struct {
AccessToken string `json:"access_token"`
Expiry time.Time `json:"token_expiry"`
}
func (*GcloudCredential) Token ¶
func (cred *GcloudCredential) Token() *oauth2.Token
type RequiredFlags ¶
type RequiredFlags uint
const ( ProjectRequired RequiredFlags = 1 << iota InstanceRequired )
const NoneRequired RequiredFlags = 0
const ProjectAndInstanceRequired RequiredFlags = ProjectRequired | InstanceRequired
Source Files
¶
- cbtconfig.go
Click to show internal directories.
Click to hide internal directories.