Skip to content

Instantly share code, notes, and snippets.

@jhgaylor
Created November 12, 2017 20:27
Show Gist options
  • Save jhgaylor/9861b307a71289b5d7eef88aa2f2ea89 to your computer and use it in GitHub Desktop.
Save jhgaylor/9861b307a71289b5d7eef88aa2f2ea89 to your computer and use it in GitHub Desktop.
func NewCI(
teamName string,
url string,
username string,
password string,
insecure bool,
caCert string,
) (*ConcourseCI, error) {
authTarget, _ := rc.NewBasicAuthTarget("my-target", url, teamName, insecure, username, password, caCert, false)
fmt.Printf("CI: got a basic auth target.\n")
token, _ := authTarget.Team().AuthToken()
fmt.Printf("CI: got an auth token using basic auth creds.\n")
rctoken := rc.TargetToken(token)
target, _ := rc.GetTokenTarget("dev-sugar", url, teamName, insecure, &rctoken, caCert, false)
fmt.Printf("CI: got a token target.\n")
webRequestGenerator := rata.NewRequestGenerator(target.Client().URL(), web.Routes)
ci := &ConcourseCI{
target: target,
webRequestGenerator: webRequestGenerator,
}
fmt.Printf("Created a new CI!\n")
return ci, nil
}
func GetTokenTarget(
name TargetName,
url string,
teamName string,
insecure bool,
token *TargetToken,
caCert string,
tracing bool,
) (Target, error) {
caCertPool, err := loadCACertPool(caCert)
if err != nil {
return nil, err
}
httpClient := defaultHttpClient(token, insecure, caCertPool)
client := concourse.NewClient(url, httpClient, tracing)
return newTarget(
name,
teamName,
url,
token,
caCert,
caCertPool,
insecure,
client,
), nil
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment