model

package
v2.2.2 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	// build-in dbroles
	RoleBuildInAdmin        string = "atlasAdmin"
	RoleBuildInReadWriteAny string = "readWriteAnyDatabase"
	RoleBuildInReadAny      string = "readAnyDatabase"

	RoleCustomAdmin     UserCustomRoleType = "dbAdmin"
	RoleCustomReadWrite UserCustomRoleType = "readWrite"
	RoleCustomRead      UserCustomRoleType = "read"
)

Variables

This section is empty.

Functions

func NewTeam

func NewTeam(name, namespace string) *akov2.AtlasTeam

Types

type AProject

type AProject struct {
	metav1.TypeMeta `json:",inline"`
	ObjectMeta      *metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec            ProjectSpec        `json:"spec,omitempty"`
}

func LoadUserProjectConfig

func LoadUserProjectConfig(path string) AProject

LoadUserProjectConfig load configuration from file into object

func NewProject

func NewProject(k8sname string) *AProject

func (*AProject) ConvertByte

func (p *AProject) ConvertByte() []byte
func (p *AProject) DeletePrivateLink(id string) *AProject

func (*AProject) GetK8sMetaName

func (p *AProject) GetK8sMetaName() string

func (*AProject) GetPrivateIDByProviderRegion

func (p *AProject) GetPrivateIDByProviderRegion(statusItem status.ProjectPrivateEndpoint) string

func (*AProject) GetProjectName

func (p *AProject) GetProjectName() string

func (*AProject) ProjectName

func (p *AProject) ProjectName(name string) *AProject

func (*AProject) UpdatePrivateLinkByOrder

func (p *AProject) UpdatePrivateLinkByOrder(i int, id string) *AProject

func (*AProject) UpdatePrivateLinkID

func (p *AProject) UpdatePrivateLinkID(test akov2.PrivateEndpoint) *AProject

func (*AProject) WithAuditing

func (p *AProject) WithAuditing(auditing *akov2.Auditing) *AProject

func (*AProject) WithCloudProviderIntegration added in v2.1.0

func (p *AProject) WithCloudProviderIntegration(role akov2.CloudProviderIntegration) *AProject

func (*AProject) WithEncryptionAtRest

func (p *AProject) WithEncryptionAtRest(spec *akov2.EncryptionAtRest) *AProject

func (*AProject) WithIntegration

func (p *AProject) WithIntegration(spec ProjectIntegration) *AProject

func (*AProject) WithIpAccess

func (p *AProject) WithIpAccess(cidrBlock, comment string) *AProject

func (*AProject) WithNetworkPeer

func (p *AProject) WithNetworkPeer(peer akov2.NetworkPeer) *AProject
func (p *AProject) WithPrivateLink(provider provider.ProviderName, region string) *AProject

func (*AProject) WithSecretRef

func (p *AProject) WithSecretRef(name string) *AProject

func (*AProject) WithSecretRefNamespaced

func (p *AProject) WithSecretRefNamespaced(name, namespace string) *AProject

func (*AProject) WithX509

func (p *AProject) WithX509(certRef *common.ResourceRefNamespaced) *AProject

type AProjectWithStatus

type AProjectWithStatus struct {
	AProject
	Status status.AtlasProjectStatus
}

type AtlasDeployment

type AtlasDeployment struct {
	metav1.TypeMeta `json:",inline"`
	ObjectMeta      *metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec            DeploymentSpec     `json:"spec,omitempty"`
}

func LoadUserDeploymentConfig

func LoadUserDeploymentConfig(path string) AtlasDeployment

LoadUserDeploymentConfig load configuration into object

func (*AtlasDeployment) DeploymentFileName

func (ad *AtlasDeployment) DeploymentFileName(input UserInputs) string

func (*AtlasDeployment) GetDeploymentNameResource

func (ad *AtlasDeployment) GetDeploymentNameResource() string

type AtlasKeyType

type AtlasKeyType struct {
	DefaultFullAccessKey bool         // use full access key provided with github secrets
	Roles                []AtlasRoles // specify role for non default
	Whitelist            []string

	GlobalLevelKey    bool // if true, tests create "<operator-deployment-name>-api-key"
	GlobalKeyAttached *admin.ApiKeyUserDetails
}

func NewEmptyAtlasKeyType

func NewEmptyAtlasKeyType() *AtlasKeyType

func (*AtlasKeyType) CreateAsGlobalLevelKey

func (a *AtlasKeyType) CreateAsGlobalLevelKey() *AtlasKeyType

func (*AtlasKeyType) GetRole

func (a *AtlasKeyType) GetRole() []AtlasRoles

func (*AtlasKeyType) IsFullAccess

func (a *AtlasKeyType) IsFullAccess() bool

func (*AtlasKeyType) UseDefaultFullAccess

func (a *AtlasKeyType) UseDefaultFullAccess() *AtlasKeyType

func (*AtlasKeyType) WithRoles

func (a *AtlasKeyType) WithRoles(r []AtlasRoles) *AtlasKeyType

func (*AtlasKeyType) WithWhiteList

func (a *AtlasKeyType) WithWhiteList(wl []string) *AtlasKeyType

type AtlasRoles

type AtlasRoles = string
const (
	GroupOwner AtlasRoles = "GROUP_OWNER"
)

type CatalogSource

type CatalogSource struct {
	metav1.TypeMeta `json:",inline"`
	ObjectMeta      *metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec            CatalogSourceSpec  `json:"spec,omitempty"`
}

func NewCatalogSource

func NewCatalogSource(imageURL string) CatalogSource

type CatalogSourceSpec

type CatalogSourceSpec struct {
	SourceType  string `json:"sourceType"`
	Image       string `json:"image"`
	DisplayName string `json:"displayName"`
	Publisher   string `json:"publisher"`
}

type DBUser

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

	Spec UserSpec `json:"spec,omitempty"`
}

func NewDBUser

func NewDBUser(userName string) *DBUser

func (*DBUser) AddBuildInAdminRole

func (s *DBUser) AddBuildInAdminRole() *DBUser

func (*DBUser) AddBuildInReadAnyRole

func (s *DBUser) AddBuildInReadAnyRole() *DBUser

func (*DBUser) AddBuildInReadWriteRole

func (s *DBUser) AddBuildInReadWriteRole() *DBUser

func (*DBUser) AddCustomRole

func (s *DBUser) AddCustomRole(role UserCustomRoleType, db string, collection string) *DBUser

func (*DBUser) DeleteAllRoles

func (s *DBUser) DeleteAllRoles() *DBUser

func (*DBUser) GetFilePath

func (s *DBUser) GetFilePath(projectName string) string

func (*DBUser) SaveConfigurationTo

func (s *DBUser) SaveConfigurationTo(folder string)

func (*DBUser) WithAuthDatabase

func (s *DBUser) WithAuthDatabase(name string) *DBUser

func (*DBUser) WithProjectRef

func (s *DBUser) WithProjectRef(name string) *DBUser

func (*DBUser) WithSecretRef

func (s *DBUser) WithSecretRef(name string) *DBUser

func (*DBUser) WithX509

func (s *DBUser) WithX509(username string) *DBUser

type DeploymentSpec

type DeploymentSpec akov2.AtlasDeploymentSpec

func (DeploymentSpec) GetDeploymentName

func (spec DeploymentSpec) GetDeploymentName() string

type ProjectIntegration

type ProjectIntegration project.Integration

func NewPIntegration

func NewPIntegration(iType string) *ProjectIntegration

func (*ProjectIntegration) WithAPIKeyRef

func (i *ProjectIntegration) WithAPIKeyRef(name, ns string) *ProjectIntegration

func (*ProjectIntegration) WithAPITokenRef

func (i *ProjectIntegration) WithAPITokenRef(name, ns string) *ProjectIntegration

func (*ProjectIntegration) WithAccountID

func (i *ProjectIntegration) WithAccountID(id string) *ProjectIntegration

func (*ProjectIntegration) WithChannelName

func (i *ProjectIntegration) WithChannelName(c string) *ProjectIntegration

func (*ProjectIntegration) WithFlowName

func (i *ProjectIntegration) WithFlowName(f string) *ProjectIntegration

func (*ProjectIntegration) WithLicenseKeyRef

func (i *ProjectIntegration) WithLicenseKeyRef(name, ns string) *ProjectIntegration

func (*ProjectIntegration) WithOrgName

func (i *ProjectIntegration) WithOrgName(o string) *ProjectIntegration

func (*ProjectIntegration) WithReadTokenRef

func (i *ProjectIntegration) WithReadTokenRef(name, ns string) *ProjectIntegration

func (*ProjectIntegration) WithRegion

func (i *ProjectIntegration) WithRegion(region string) *ProjectIntegration

func (*ProjectIntegration) WithRoutingKeyRef

func (i *ProjectIntegration) WithRoutingKeyRef(name, ns string) *ProjectIntegration

func (*ProjectIntegration) WithSecretRef

func (i *ProjectIntegration) WithSecretRef(name, ns string) *ProjectIntegration

func (*ProjectIntegration) WithServiceKeyRef

func (i *ProjectIntegration) WithServiceKeyRef(name, ns string) *ProjectIntegration

func (*ProjectIntegration) WithTeamName

func (i *ProjectIntegration) WithTeamName(t string) *ProjectIntegration

func (*ProjectIntegration) WithURL

func (i *ProjectIntegration) WithURL(url string) *ProjectIntegration

func (*ProjectIntegration) WithWriteTokenRef

func (i *ProjectIntegration) WithWriteTokenRef(name, ns string) *ProjectIntegration

type ProjectSpec

type ProjectSpec akov2.AtlasProjectSpec

type TestDataProvider

type TestDataProvider struct {
	ConfPaths                   []string                  // init deployments configuration
	ConfUpdatePaths             []string                  // update configuration
	Resources                   UserInputs                // struct of all user resources project, deployments, database users
	Actions                     []func(*TestDataProvider) // additional actions for the current data set
	PortGroup                   int                       // ports for the test application starts from _
	SkipAppConnectivityCheck    bool
	Context                     context.Context
	K8SClient                   client.Client
	InitialDeployments          []*akov2.AtlasDeployment
	Project                     *akov2.AtlasProject
	Prefix                      string
	Users                       []*akov2.AtlasDatabaseUser
	Teams                       []*akov2.AtlasTeam
	ManagerContext              context.Context
	AWSResourcesGenerator       *helper.AwsResourcesGenerator
	ObjectDeletionProtection    bool
	SubObjectDeletionProtection bool
}

TestDataProvider is the Full Data set for the current test case

func DataProvider

func DataProvider(keyTestPrefix string, r *AtlasKeyType, portGroup int, actions []func(*TestDataProvider)) *TestDataProvider

func DataProviderWithResources

func DataProviderWithResources(keyTestPrefix string, project AProject, r *AtlasKeyType, initDeploymentConfigs []string, updateDeploymentConfig []string, users []DBUser, portGroup int, actions []func(*TestDataProvider)) TestDataProvider

func (TestDataProvider) WithInitialDeployments

func (data TestDataProvider) WithInitialDeployments(deployments ...*akov2.AtlasDeployment) *TestDataProvider

func (TestDataProvider) WithObjectDeletionProtection

func (data TestDataProvider) WithObjectDeletionProtection(protected bool) *TestDataProvider

func (TestDataProvider) WithProject

func (data TestDataProvider) WithProject(project *akov2.AtlasProject) *TestDataProvider

func (TestDataProvider) WithSubObjectDeletionProtection

func (data TestDataProvider) WithSubObjectDeletionProtection(protected bool) *TestDataProvider

func (TestDataProvider) WithUsers

func (data TestDataProvider) WithUsers(users ...*akov2.AtlasDatabaseUser) *TestDataProvider

type UserCustomRoleType

type UserCustomRoleType string

type UserInputs

type UserInputs struct {
	TestID             string
	AtlasKeyAccessType AtlasKeyType
	ProjectID          string
	KeyName            string
	Namespace          string
	ProjectPath        string
	Deployments        []AtlasDeployment
	Users              []DBUser
	Project            *AProject
}

func NewSimpleUserInputs

func NewSimpleUserInputs(keyTestPrefix string, r *AtlasKeyType) UserInputs

NewSimpleUserInputs prepare users inputs

func NewUserInputs

func NewUserInputs(keyTestPrefix string, project AProject, users []DBUser, r *AtlasKeyType) UserInputs

NewUserInputs prepare users inputs

func (*UserInputs) GetAppFolder

func (u *UserInputs) GetAppFolder() string

func (*UserInputs) GetAtlasProjectFullKubeName

func (u *UserInputs) GetAtlasProjectFullKubeName() string

func (*UserInputs) GetOperatorFolder

func (u *UserInputs) GetOperatorFolder() string

func (*UserInputs) GetResourceFolder

func (u *UserInputs) GetResourceFolder() string

func (*UserInputs) GetServiceCatalogSourceFolder

func (u *UserInputs) GetServiceCatalogSourceFolder() string

func (*UserInputs) GetUsersFolder

func (u *UserInputs) GetUsersFolder() string

type UserSpec

Jump to

Keyboard shortcuts

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