in teamcity/auth.go [396:488]
func (r *authResource) readState(result client.AuthSettings) (authResourceModel, error) {
var state authResourceModel
state.AllowGuest = types.BoolValue(result.AllowGuest)
state.GuestUsername = types.StringValue(result.GuestUsername)
state.WelcomeText = types.StringValue(result.WelcomeText)
state.CollapseLoginForm = types.BoolValue(result.CollapseLoginForm)
//state.TwoFactorMode = types.StringValue(result.TwoFactorMode)
state.PerProjectPermissions = types.BoolValue(result.PerProjectPermissions)
state.EmailVerification = types.BoolValue(result.EmailVerification)
for _, module := range result.Modules.Module {
props := make(map[string]string)
for _, p := range module.Properties.Property {
props[p.Name] = p.Value
}
if module.Name == "Token-Auth" {
state.Modules.Token = &authModuleTokenModel{}
continue
}
if module.Name == "Default" {
state.Modules.BuiltIn = &authModuleBuiltInModel{}
err := state.Modules.BuiltIn.setFields(props)
if err != nil {
return authResourceModel{}, err
}
continue
}
if module.Name == "HTTP-Basic" {
state.Modules.BasicHTTP = &authModuleBasicHTTPModel{}
continue
}
if module.Name == "Google-oauth" {
state.Modules.Google = &authModuleGoogleModel{}
err := state.Modules.Google.setFields(props)
if err != nil {
return authResourceModel{}, err
}
continue
}
if module.Name == "GitHubApp-oauth" {
state.Modules.GithubApp = &authModuleGithubAppModel{}
err := state.Modules.GithubApp.setFields(props)
if err != nil {
return authResourceModel{}, err
}
continue
}
if module.Name == "GitHub-oauth" {
state.Modules.GithubCom = &authModuleGithubModel{}
err := state.Modules.GithubCom.setFields(props)
if err != nil {
return authResourceModel{}, err
}
continue
}
if module.Name == "GHE-oauth" {
state.Modules.GithubEnterprise = &authModuleGithubModel{}
err := state.Modules.GithubEnterprise.setFields(props)
if err != nil {
return authResourceModel{}, err
}
continue
}
if module.Name == "JetbrainsSpace-oauth" {
state.Modules.Space = &authModuleSpaceModel{}
err := state.Modules.Space.setFields(props)
if err != nil {
return authResourceModel{}, err
}
continue
}
if module.Name == "LDAP" {
state.Modules.LDAP = &authModuleLDAPModel{}
err := state.Modules.LDAP.setFields(props)
if err != nil {
return authResourceModel{}, err
}
continue
}
}
return state, nil
}