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.