Documentation
¶
Overview ¶
Package v2alpha2 contains API Schema definitions for the config v2alpha2 API group +kubebuilder:object:generate=true +kubebuilder:skip +groupName=config.bankdata.dk
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "config.bankdata.dk", Version: "v2alpha2"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type GitCredential ¶
type GitCredential struct {
// User is a http basic auth username used for git.
User string `json:"user"`
// Password is a http basic auth password used for git.
Password string `json:"password"`
// RepoPrefix specifies a repo URL prefix. eg. if RepoPrefix is set to
// `https://github.com/bankdata`, then this credentials would apply for any
// repository under the bankdata github org.
RepoPrefix string `json:"repoPrefix"`
}
GitCredential represents a set of credentials to be used for repositories that match the RepoPrefix.
func (*GitCredential) DeepCopy ¶
func (in *GitCredential) DeepCopy() *GitCredential
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCredential.
func (*GitCredential) DeepCopyInto ¶
func (in *GitCredential) DeepCopyInto(out *GitCredential)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LeaderElectionConfig ¶
type LeaderElectionConfig struct {
LeaseDuration time.Duration `json:"leaseDuration"`
RenewDeadline time.Duration `json:"renewDeadline"`
RetryPeriod time.Duration `json:"retryPeriod"`
}
LeaderElectionConfig contains configuration for leader election
func (*LeaderElectionConfig) DeepCopy ¶
func (in *LeaderElectionConfig) DeepCopy() *LeaderElectionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LeaderElectionConfig.
func (*LeaderElectionConfig) DeepCopyInto ¶
func (in *LeaderElectionConfig) DeepCopyInto(out *LeaderElectionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotificationWebhookConfig ¶
type NotificationWebhookConfig struct {
// Address is the URL to be called when the controller should do a webhook
// notification. Currently the only supported notification is that a
// datasource configuration has changed.
Address string `json:"address"`
}
NotificationWebhookConfig contains configuration for how to call the notification webhook.
func (*NotificationWebhookConfig) DeepCopy ¶
func (in *NotificationWebhookConfig) DeepCopy() *NotificationWebhookConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationWebhookConfig.
func (*NotificationWebhookConfig) DeepCopyInto ¶
func (in *NotificationWebhookConfig) DeepCopyInto(out *NotificationWebhookConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProjectConfig ¶
type ProjectConfig struct {
metav1.TypeMeta `json:",inline"`
// ControllerClass sets a controller class for this controller. This allows
// the provided CRDs to target a specific controller. This is useful when
// running multiple controllers in the same cluster.
ControllerClass string `json:"controllerClass"`
// DeletionProtectionDefault sets the default to use with regards to deletion
// protection if it is not set on the resource.
DeletionProtectionDefault bool `json:"deletionProtectionDefault"`
// DisableCRDWebhooks disables the CRD webhooks on the controller. If running
// multiple controllers in the same cluster, only one will need to have it's
// webhooks enabled.
DisableCRDWebhooks bool `json:"disableCRDWebhooks"`
// EnableMigrations enables the system migration annotation. This should be
// kept disabled unless migrations need to be done.
EnableMigrations bool `json:"enableMigrations"`
// GitCredentials holds a list of git credential configurations. The
// RepoPrefix of the GitCredential will be matched angainst repository URL in
// order to determine which credential to use. The GitCredential with the
// longest matching RepoPrefix will be selected.
GitCredentials []*GitCredential `json:"gitCredentials"`
// LogLevel sets the logging level of the controller. A higher number gives
// more verbosity. A number higher than 0 should only be used for debugging
// purposes.
LogLevel int `json:"logLevel"`
LeaderElection *LeaderElectionConfig `json:"leaderElection"`
NotificationWebhook *NotificationWebhookConfig `json:"notificationWebhook"`
Sentry *SentryConfig `json:"sentry"`
SSO *SSOConfig `json:"sso"`
Styra StyraConfig `json:"styra"`
// SystemPrefix is a prefix for all the systems that the controller creates
// in Styra DAS. This is useful in order to be able to identify what
// controller created a system in a shared Styra DAS instance.
SystemPrefix string `json:"systemPrefix"`
// SystemSuffix is a suffix for all the systems that the controller creates
// in Styra DAS. This is useful in order to be able to identify what
// controller created a system in a shared Styra DAS instance.
SystemSuffix string `json:"systemSuffix"`
// SystemUserRoles is a list of Styra DAS system level roles which the subjects of
// a system will be granted.
SystemUserRoles []string `json:"systemUserRoles"`
}
ProjectConfig is the Schema for the projectconfigs API
func (*ProjectConfig) DeepCopy ¶
func (in *ProjectConfig) DeepCopy() *ProjectConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectConfig.
func (*ProjectConfig) DeepCopyInto ¶
func (in *ProjectConfig) DeepCopyInto(out *ProjectConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProjectConfig) DeepCopyObject ¶
func (in *ProjectConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ProjectConfig) GetGitCredentialForRepo ¶
func (c *ProjectConfig) GetGitCredentialForRepo(repo string) *GitCredential
GetGitCredentialForRepo determines which default GitCredential to use for checking out the policy repository based on the URL to the policy repository.
type SSOConfig ¶
type SSOConfig struct {
// IdentityProvider is the ID of a configured Styra DAS identity provider.
IdentityProvider string `json:"identityProvider"`
// JWTGroupsClaim is the json path to a claim in issued JWTs which contain a
// list of groups that the user belongs to.
JWTGroupsClaim string `json:"jwtGroupsClaim"`
}
SSOConfig contains configuration for how to use SSO tokens for determining what groups a user belongs to. This can be used to grant members of a certain group access to systems.
func (*SSOConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSOConfig.
func (*SSOConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SentryConfig ¶
type SentryConfig struct {
// Debug enables Sentry client debugging.
Debug bool `json:"debug"`
// DSN is the Sentry project DSN.
DSN string `json:"dsn"`
// Environment sets the environment of the events sent to Sentry.
Environment string `json:"environment"`
// HTTPSProxy sets an HTTP proxy server for sentry to use.
HTTPSProxy string `json:"httpsProxy"`
}
SentryConfig contains configuration for how errors should be reported to sentry.
func (*SentryConfig) DeepCopy ¶
func (in *SentryConfig) DeepCopy() *SentryConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentryConfig.
func (*SentryConfig) DeepCopyInto ¶
func (in *SentryConfig) DeepCopyInto(out *SentryConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StyraConfig ¶
type StyraConfig struct {
// Address is the URL for the Styra DAS API server.
Address string `json:"address"`
// Token is a Styra DAS API token. These can be created in the Styra DAS GUI
// or through the API. The token should have the `WorkspaceAdministrator` role.
Token string `json:"token"`
}
StyraConfig contains configuration for connecting to the Styra DAS apis
func (*StyraConfig) DeepCopy ¶
func (in *StyraConfig) DeepCopy() *StyraConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StyraConfig.
func (*StyraConfig) DeepCopyInto ¶
func (in *StyraConfig) DeepCopyInto(out *StyraConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.