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 DecisionLog ¶ added in v0.15.0
type DecisionLog struct {
RequestContext RequestContext `json:"request_context"`
}
DecisionLog contains configuration for the decision logs
func (*DecisionLog) DeepCopy ¶ added in v0.15.0
func (in *DecisionLog) DeepCopy() *DecisionLog
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DecisionLog.
func (*DecisionLog) DeepCopyInto ¶ added in v0.15.0
func (in *DecisionLog) DeepCopyInto(out *DecisionLog)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DecisionsExporterConfig ¶ added in v0.16.0
type DecisionsExporterConfig struct {
Interval string `json:"interval"`
Kafka *KafkaConfig `json:"kafka,omitempty"`
}
DecisionsExporterConfig contains configuration for decisions export
func (*DecisionsExporterConfig) DeepCopy ¶ added in v0.16.0
func (in *DecisionsExporterConfig) DeepCopy() *DecisionsExporterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DecisionsExporterConfig.
func (*DecisionsExporterConfig) DeepCopyInto ¶ added in v0.16.0
func (in *DecisionsExporterConfig) DeepCopyInto(out *DecisionsExporterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 HTTP ¶ added in v0.15.1
type HTTP struct {
// http headers that will be added to the decision logs
Headers []string `json:"headers"`
}
HTTP contains configuration for the HTTP config in the RequestContext
func (*HTTP) DeepCopy ¶ added in v0.15.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTP.
func (*HTTP) DeepCopyInto ¶ added in v0.15.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KafkaConfig ¶ added in v0.16.0
type KafkaConfig struct {
Brokers []string `json:"brokers"`
Topic string `json:"topic"`
RequiredAcks string `json:"requiredAcks"`
TLS *TLSConfig `json:"tls,omitempty"`
}
KafkaConfig contains configuration for exporting decisions to Kafka
func (*KafkaConfig) DeepCopy ¶ added in v0.16.0
func (in *KafkaConfig) DeepCopy() *KafkaConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaConfig.
func (*KafkaConfig) DeepCopyInto ¶ added in v0.16.0
func (in *KafkaConfig) DeepCopyInto(out *KafkaConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LeaderElectionConfig ¶
type LeaderElectionConfig struct {
LeaseDuration metav1.Duration `json:"leaseDuration"`
RenewDeadline metav1.Duration `json:"renewDeadline"`
RetryPeriod metav1.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 NotificationWebhooksConfig ¶ added in v0.11.0
type NotificationWebhooksConfig 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.
SystemDatasourceChanged string `json:"systemDatasourceChanged,omitempty"`
LibraryDatasourceChanged string `json:"libraryDatasourceChanged,omitempty"`
}
NotificationWebhooksConfig contains configuration for how to call the notification webhook.
func (*NotificationWebhooksConfig) DeepCopy ¶ added in v0.11.0
func (in *NotificationWebhooksConfig) DeepCopy() *NotificationWebhooksConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationWebhooksConfig.
func (*NotificationWebhooksConfig) DeepCopyInto ¶ added in v0.11.0
func (in *NotificationWebhooksConfig) DeepCopyInto(out *NotificationWebhooksConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OPAConfig ¶ added in v0.15.0
type OPAConfig struct {
DecisionLogs DecisionLog `json:"decision_logs"`
}
OPAConfig contains default configuration for the opa config generated by the styra-controller
func (*OPAConfig) DeepCopy ¶ added in v0.15.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OPAConfig.
func (*OPAConfig) DeepCopyInto ¶ added in v0.15.0
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"`
// ReadOnly sets the value of ReadOnly for systems
ReadOnly bool `json:"readOnly"`
// EnableDeltaBundlesDefault sets the default of whether systems have delta-bundles or not
EnableDeltaBundlesDefault *bool `json:"enableDeltaBundlesDefault,omitempty"`
// 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"`
NotificationWebhooks *NotificationWebhooksConfig `json:"notificationWebhooks,omitempty"`
Sentry *SentryConfig `json:"sentry"`
SSO *SSOConfig `json:"sso"`
Styra StyraConfig `json:"styra"`
OPA OPAConfig `json:"opa,omitempty"`
// 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"`
DecisionsExporter *DecisionsExporterConfig `json:"decisionsExporter,omitempty"`
}
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 RequestContext ¶ added in v0.15.1
type RequestContext struct {
HTTP HTTP `json:"http"`
}
RequestContext contains configuration for the RequestContext in the decision logs
func (*RequestContext) DeepCopy ¶ added in v0.15.1
func (in *RequestContext) DeepCopy() *RequestContext
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestContext.
func (*RequestContext) DeepCopyInto ¶ added in v0.15.1
func (in *RequestContext) DeepCopyInto(out *RequestContext)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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"`
// Alternative to the "token" whice define the Styra DAS API token directly in the config file,
// this "tokenSecretPath" will use a token from a secret (only if "token" is not set)
TokenSecretPath string `json:"tokenSecretPath"`
}
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.
type TLSConfig ¶ added in v0.16.0
type TLSConfig struct {
ClientCertificateName string `json:"clientCertificateName"`
ClientCertificate string `json:"clientCertificate"`
ClientKey string `json:"clientKey"`
RootCA string `json:"rootCA"`
}
TLSConfig contains TLS configuration for Kafka decisions export.
func (*TLSConfig) DeepCopy ¶ added in v0.16.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSConfig.
func (*TLSConfig) DeepCopyInto ¶ added in v0.16.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.