v1alpha1

package
v0.13.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 2, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the styra v1alpha1 API group.

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "styra.bankdata.dk", Version: "v1alpha1"}

	// 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 GitRepo added in v0.10.0

type GitRepo struct {
	// Path is the path in the git repo where the policies are located.
	Path string `json:"path,omitempty"`

	// Reference is used to point to a tag or branch. This will be ignored if
	// `Commit` is specified.
	Reference string `json:"reference,omitempty"`

	// Commit is used to point to a specific commit SHA. This takes precedence
	// over `Reference` if both are specified.
	Commit string `json:"commit,omitempty"`

	// URL is the URL of the git repo.
	URL string `json:"url"`
}

GitRepo defines the Git configurations a library can be defined by

func (*GitRepo) DeepCopy added in v0.10.0

func (in *GitRepo) DeepCopy() *GitRepo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepo.

func (*GitRepo) DeepCopyInto added in v0.10.0

func (in *GitRepo) DeepCopyInto(out *GitRepo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GlobalDatasource

type GlobalDatasource struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   GlobalDatasourceSpec   `json:"spec,omitempty"`
	Status GlobalDatasourceStatus `json:"status,omitempty"`
}

GlobalDatasource is a resource used for creating global datasources in Styra. These datasources are available across systems and can be used for shared data. GlobalDatasource can also be used to create libraries by using the GlobalDatasourceCategoryGitRego category.

func (*GlobalDatasource) DeepCopy

func (in *GlobalDatasource) DeepCopy() *GlobalDatasource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDatasource.

func (*GlobalDatasource) DeepCopyInto

func (in *GlobalDatasource) DeepCopyInto(out *GlobalDatasource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GlobalDatasource) DeepCopyObject

func (in *GlobalDatasource) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*GlobalDatasource) Default

func (r *GlobalDatasource) Default()

Default implements webhook.Defaulter so that a webhook can be registered for the type.

func (*GlobalDatasource) SetupWebhookWithManager

func (r *GlobalDatasource) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager sets up the GlobalDatasource webhooks with the Manager.

func (*GlobalDatasource) ValidateCreate

func (r *GlobalDatasource) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so that a webhook can be registered for the type.

func (*GlobalDatasource) ValidateDelete

func (r *GlobalDatasource) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so that a webhook can be registered for the type.

func (*GlobalDatasource) ValidateUpdate

func (r *GlobalDatasource) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so that a webhook can be registered for the type.

type GlobalDatasourceCategory

type GlobalDatasourceCategory string

GlobalDatasourceCategory represents a datasource category. +kubebuilder:validation:Enum=git/rego

const (
	// GlobalDatasourceCategoryGitRego represents the git/rego datasource category.
	GlobalDatasourceCategoryGitRego GlobalDatasourceCategory = "git/rego"
)

type GlobalDatasourceList

type GlobalDatasourceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []GlobalDatasource `json:"items"`
}

GlobalDatasourceList represents a list of GlobalDatasource resources.

func (*GlobalDatasourceList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDatasourceList.

func (*GlobalDatasourceList) DeepCopyInto

func (in *GlobalDatasourceList) DeepCopyInto(out *GlobalDatasourceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GlobalDatasourceList) DeepCopyObject

func (in *GlobalDatasourceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type GlobalDatasourceSecretRef

type GlobalDatasourceSecretRef struct {
	// Namespace is the namespace where the secret resides.
	Namespace string `json:"namespace"`
	// Name is the name of the secret.
	Name string `json:"name"`
}

GlobalDatasourceSecretRef represents a reference to a secret.

func (*GlobalDatasourceSecretRef) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDatasourceSecretRef.

func (*GlobalDatasourceSecretRef) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GlobalDatasourceSpec

type GlobalDatasourceSpec struct {
	// Name is the name to use for the global datasource in Styra DAS
	Name string `json:"name"`
	// Category is the datasource category. For more information about
	// supported categories see the available GlobalDatasourceCategory
	// constants in the package.
	Category GlobalDatasourceCategory `json:"category"`
	// Description describes the datasource.
	Description string `json:"description,omitempty"`
	// Enabled toggles whether or not the datasource should be enabled.
	Enabled *bool `json:"enabled,omitempty"`
	// PollingInterval sets the interval for when the datasource should be refreshed.
	PollingInterval string `json:"pollingInterval,omitempty"`
	// Commit is a commit SHA for the git/xx datasources. If `Reference` and this
	// is set, this takes precedence.
	Commit string `json:"commit,omitempty"`
	// CredentialsSecretRef references a secret with keys `name` and `secret`
	// which will be used for authentication.
	CredentialsSecretRef *GlobalDatasourceSecretRef `json:"credentialsSecretRef,omitempty"`
	// Reference is a git reference for the git/xx datasources.
	Reference string `json:"reference,omitempty"`
	// URL is used in http and git/xx datasources.
	URL string `json:"url,omitempty"`
	// DeletionProtection skips deleting the datasource in Styra when the
	// `GlobalDatasource` resource is deleted.
	DeletionProtection *bool `json:"deletionProtection,omitempty"`
	// Path is the path in git in git/xx datasources.
	Path string `json:"path,omitempty"`
}

GlobalDatasourceSpec is the specification of the GlobalDatasource.

func (*GlobalDatasourceSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDatasourceSpec.

func (*GlobalDatasourceSpec) DeepCopyInto

func (in *GlobalDatasourceSpec) DeepCopyInto(out *GlobalDatasourceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GlobalDatasourceStatus

type GlobalDatasourceStatus struct{}

GlobalDatasourceStatus holds the status of the GlobalDatasource resource.

func (*GlobalDatasourceStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDatasourceStatus.

func (*GlobalDatasourceStatus) DeepCopyInto

func (in *GlobalDatasourceStatus) DeepCopyInto(out *GlobalDatasourceStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Library added in v0.10.0

type Library struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   LibrarySpec   `json:"spec,omitempty"`
	Status LibraryStatus `json:"status,omitempty"`
}

Library is the Schema for the libraries API

func (*Library) DeepCopy added in v0.10.0

func (in *Library) DeepCopy() *Library

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Library.

func (*Library) DeepCopyInto added in v0.10.0

func (in *Library) DeepCopyInto(out *Library)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Library) DeepCopyObject added in v0.10.0

func (in *Library) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Library) Default added in v0.10.0

func (r *Library) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Library) SetupWebhookWithManager added in v0.10.0

func (r *Library) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager sets up the Library webhooks with the Manager.

func (*Library) ValidateCreate added in v0.10.0

func (r *Library) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Library) ValidateDelete added in v0.10.0

func (r *Library) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Library) ValidateUpdate added in v0.10.0

func (r *Library) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type LibraryDatasource added in v0.10.0

type LibraryDatasource struct {
	// Path is the path within the system where the datasource should reside.
	Path string `json:"path"`

	// Description is a description of the datasource
	Description string `json:"description,omitempty"`
}

LibraryDatasource contains metadata of a datasource, stored in a library

func (*LibraryDatasource) DeepCopy added in v0.10.0

func (in *LibraryDatasource) DeepCopy() *LibraryDatasource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LibraryDatasource.

func (*LibraryDatasource) DeepCopyInto added in v0.10.0

func (in *LibraryDatasource) DeepCopyInto(out *LibraryDatasource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LibraryList added in v0.10.0

type LibraryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Library `json:"items"`
}

LibraryList contains a list of Library

func (*LibraryList) DeepCopy added in v0.10.0

func (in *LibraryList) DeepCopy() *LibraryList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LibraryList.

func (*LibraryList) DeepCopyInto added in v0.10.0

func (in *LibraryList) DeepCopyInto(out *LibraryList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LibraryList) DeepCopyObject added in v0.10.0

func (in *LibraryList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LibrarySecretRef added in v0.10.0

type LibrarySecretRef struct {
	// Namespace is the namespace where the secret resides.
	Namespace string `json:"namespace"`
	// Name is the name of the secret.
	Name string `json:"name"`
}

LibrarySecretRef defines how to access a k8s secret for the library.

func (*LibrarySecretRef) DeepCopy added in v0.10.0

func (in *LibrarySecretRef) DeepCopy() *LibrarySecretRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LibrarySecretRef.

func (*LibrarySecretRef) DeepCopyInto added in v0.10.0

func (in *LibrarySecretRef) DeepCopyInto(out *LibrarySecretRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LibrarySpec added in v0.10.0

type LibrarySpec struct {

	// Name is the name the Library will have in Styra DAS
	Name string `json:"name"`

	// Description is the description of the Library
	Description string `json:"description"`

	// Subjects is the list of subjects which should have access to the system.
	Subjects []LibrarySubject `json:"subjects,omitempty"`

	// SourceControl is the sourcecontrol configuration for the Library
	SourceControl *SourceControl `json:"sourceControl,omitempty"`

	// Datasources is the list of datasources in the Library
	Datasources []LibraryDatasource `json:"datasources,omitempty"`
}

LibrarySpec defines the desired state of Library

func (*LibrarySpec) DeepCopy added in v0.10.0

func (in *LibrarySpec) DeepCopy() *LibrarySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LibrarySpec.

func (*LibrarySpec) DeepCopyInto added in v0.10.0

func (in *LibrarySpec) DeepCopyInto(out *LibrarySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LibraryStatus added in v0.10.0

type LibraryStatus struct {
}

LibraryStatus defines the observed state of Library

func (*LibraryStatus) DeepCopy added in v0.10.0

func (in *LibraryStatus) DeepCopy() *LibraryStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LibraryStatus.

func (*LibraryStatus) DeepCopyInto added in v0.10.0

func (in *LibraryStatus) DeepCopyInto(out *LibraryStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LibrarySubject added in v0.10.0

type LibrarySubject struct {
	// Kind is the LibrarySubjectKind of the subject.
	//+kubebuilder:validation:Enum=user;group
	Kind LibrarySubjectKind `json:"kind,omitempty"`

	// Name is the name of the subject. The meaning of this field depends on the
	// SubjectKind.
	Name string `json:"name"`
}

LibrarySubject represents a subject which has been granted access to the Library. The subject is assigned to the LibraryViewer role.

func (*LibrarySubject) DeepCopy added in v0.10.0

func (in *LibrarySubject) DeepCopy() *LibrarySubject

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LibrarySubject.

func (*LibrarySubject) DeepCopyInto added in v0.10.0

func (in *LibrarySubject) DeepCopyInto(out *LibrarySubject)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (LibrarySubject) IsUser added in v0.10.0

func (subject LibrarySubject) IsUser() bool

IsUser returns whether or not the kind of the subject is a user.

type LibrarySubjectKind added in v0.10.0

type LibrarySubjectKind string

LibrarySubjectKind represents a kind of a subject.

const (
	// LibrarySubjectKindUser is the subject kind user.
	LibrarySubjectKindUser LibrarySubjectKind = "user"

	// LibrarySubjectKindGroup is the subject kind group.
	LibrarySubjectKindGroup LibrarySubjectKind = "group"
)

type SourceControl added in v0.10.0

type SourceControl struct {
	LibraryOrigin *GitRepo `json:"libraryOrigin"`
}

SourceControl is a struct from styra where we only use a single field but kept for clarity when comparing to the API

func (*SourceControl) DeepCopy added in v0.10.0

func (in *SourceControl) DeepCopy() *SourceControl

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceControl.

func (*SourceControl) DeepCopyInto added in v0.10.0

func (in *SourceControl) DeepCopyInto(out *SourceControl)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL