Documentation
¶
Index ¶
- Constants
- func DebugFormat(obj client.Object) string
- func InferGitServerImage(porchImage string) string
- func RunInParallel(functions ...func() any) []any
- type ErrorHandler
- type GitConfig
- type MutatorOption
- type OciConfig
- type Password
- type RepositoryOption
- type RepositoryOptions
- type SecretOption
- type TestSuite
- func (t *TestSuite) AddMutator(resources *porchapi.PackageRevisionResources, image string, ...)
- func (t *TestSuite) AddResourceToPackage(resources *porchapi.PackageRevisionResources, filePath string, name string)
- func (t *TestSuite) Cleanup(f func())
- func (t *TestSuite) CompareGoldenFileYAML(goldenPath string, gotContents string) string
- func (t *TestSuite) CreateE(obj client.Object, opts ...client.CreateOption)
- func (t *TestSuite) CreateF(obj client.Object, opts ...client.CreateOption)
- func (t *TestSuite) CreateGcpPackageRevisionSecret(name string, opts ...RepositoryOptions) string
- func (t *TestSuite) CreateGitRepo() GitConfig
- func (t *TestSuite) CreateOrUpdateF(obj client.Object, opts ...client.CreateOption)
- func (t *TestSuite) CreateOrUpdateSecret(name string, username string, password Password, opts ...RepositoryOptions) string
- func (t *TestSuite) CreatePackageDraftF(repository, packageName, workspace string) *porchapi.PackageRevision
- func (t *TestSuite) CreatePackageSkeleton(repoName, packageName, workspace string) *porchapi.PackageRevision
- func (t *TestSuite) DeleteE(obj client.Object, opts ...client.DeleteOption)
- func (t *TestSuite) DeleteEH(obj client.Object, eh ErrorHandler, opts ...client.DeleteOption)
- func (t *TestSuite) DeleteF(obj client.Object, opts ...client.DeleteOption)
- func (t *TestSuite) DeleteL(obj client.Object, opts ...client.DeleteOption)
- func (t *TestSuite) DumpLogsForDeploymentE(deploymentKey client.ObjectKey)
- func (t *TestSuite) Error(args ...any)
- func (t *TestSuite) Errorf(format string, args ...any)
- func (t *TestSuite) Fatal(args ...any)
- func (t *TestSuite) Fatalf(format string, args ...any)
- func (t *TestSuite) FindAndDecodeF(resources *porchapi.PackageRevisionResources, name string, value interface{})
- func (t *TestSuite) GetContext() context.Context
- func (t *TestSuite) GetE(key client.ObjectKey, obj client.Object)
- func (t *TestSuite) GetF(key client.ObjectKey, obj client.Object)
- func (t *TestSuite) GetPackageRevision(repo string, pkgName string, revision int) *porchapi.PackageRevision
- func (t *TestSuite) Initialize()
- func (t *TestSuite) IsPorchServerInCluster() bool
- func (t *TestSuite) IsTestRunnerInCluster() bool
- func (t *TestSuite) ListE(list client.ObjectList, opts ...client.ListOption)
- func (t *TestSuite) ListF(list client.ObjectList, opts ...client.ListOption)
- func (t *TestSuite) Log(args ...any)
- func (t *TestSuite) Logf(format string, args ...any)
- func (t *TestSuite) MustExist(key client.ObjectKey, obj client.Object)
- func (t *TestSuite) MustFindPackageRevision(packages *porchapi.PackageRevisionList, name repository.PackageRevisionKey) *porchapi.PackageRevision
- func (t *TestSuite) MustHaveLabels(name string, labels map[string]string)
- func (t *TestSuite) MustNotExist(obj client.Object)
- func (t *TestSuite) MustNotHaveLabels(name string, labels []string)
- func (t *TestSuite) Name() string
- func (t *TestSuite) ParseKptfileF(resources *porchapi.PackageRevisionResources) *kptfilev1.KptFile
- func (t *TestSuite) PatchE(obj client.Object, patch client.Patch, opts ...client.PatchOption)
- func (t *TestSuite) PatchF(obj client.Object, patch client.Patch, opts ...client.PatchOption)
- func (t *TestSuite) RegisterGitRepositoryF(repo, name, directory string, username string, password Password, ...)
- func (t *TestSuite) RegisterTestBlueprintRepository(name, directory string, opts ...RepositoryOptions)
- func (t *TestSuite) RetriggerBackgroundJobForRepo(repoName string)
- func (t *TestSuite) SaveKptfileF(resources *porchapi.PackageRevisionResources, kptfile *kptfilev1.KptFile)
- func (t *TestSuite) SetupSuite()
- func (t *TestSuite) Skipf(format string, args ...any)
- func (t *TestSuite) UpdateApprovalF(pr *porchapi.PackageRevision, opts metav1.UpdateOptions) *porchapi.PackageRevision
- func (t *TestSuite) UpdateApprovalL(pr *porchapi.PackageRevision, opts metav1.UpdateOptions) *porchapi.PackageRevision
- func (t *TestSuite) UpdateE(obj client.Object, opts ...client.UpdateOption)
- func (t *TestSuite) UpdateF(obj client.Object, opts ...client.UpdateOption)
- func (t *TestSuite) ValidateFinalizers(name string, finalizers []string)
- func (t *TestSuite) ValidateLabelsAndAnnos(name string, labels, annos map[string]string)
- func (t *TestSuite) ValidateOwnerReferences(name string, ownerRefs []metav1.OwnerReference)
- func (t *TestSuite) WaitUntilAllPackagesDeleted(repoName string, namespace string)
- func (t *TestSuite) WaitUntilDraftPackageRevisionExists(repository string, pkgName string) *porchapi.PackageRevision
- func (t *TestSuite) WaitUntilObjectDeleted(gvk schema.GroupVersionKind, namespacedName types.NamespacedName, ...)
- func (t *TestSuite) WaitUntilPackageRevisionExists(repository string, pkgName string, revision int) *porchapi.PackageRevision
- func (t *TestSuite) WaitUntilPackageRevisionFulfillingConditionExists(timeout time.Duration, condition func(porchapi.PackageRevision) bool) (*porchapi.PackageRevision, error)
- func (t *TestSuite) WaitUntilPackageRevisionResourcesExists(key types.NamespacedName) *porchapi.PackageRevisionResources
- func (t *TestSuite) WaitUntilRepositoryDeleted(name, namespace string)
- func (t *TestSuite) WaitUntilRepositoryReady(name, namespace string)
- type TestSuiteWithGit
- func (t *TestSuiteWithGit) GitConfig(name string) GitConfig
- func (t *TestSuiteWithGit) RegisterGitRepositoryWithDirectoryF(name string, directory string, opts ...RepositoryOptions)
- func (t *TestSuiteWithGit) RegisterMainGitRepositoryF(name string, opts ...RepositoryOptions)
- func (t *TestSuiteWithGit) SetupEnvvars()
- func (t *TestSuiteWithGit) SetupSuite()
Constants ¶
View Source
const ( // TODO: accept a flag? PorchTestConfigFile = "porch-test-config.yaml" TestGitServerImage = "test-git-server" )
Variables ¶
This section is empty.
Functions ¶
func DebugFormat ¶
func InferGitServerImage ¶ added in v1.3.1
func RunInParallel ¶ added in v1.4.0
Types ¶
type ErrorHandler ¶
type ErrorHandler func(format string, args ...interface{})
type MutatorOption ¶ added in v1.4.0
func WithConfigPath ¶ added in v1.4.0
func WithConfigPath(configPath string) MutatorOption
func WithConfigmap ¶ added in v1.4.0
func WithConfigmap(configMap map[string]string) MutatorOption
type RepositoryOption ¶ added in v1.3.1
type RepositoryOption func(*configapi.Repository)
func InNamespace ¶ added in v1.3.1
func InNamespace(ns string) RepositoryOption
func WithDeployment ¶ added in v1.3.1
func WithDeployment() RepositoryOption
type RepositoryOptions ¶ added in v1.4.0
type RepositoryOptions struct {
RepOpts RepositoryOption
SecOpts SecretOption
}
type SecretOption ¶ added in v1.4.0
func SecretInNamespace ¶ added in v1.4.0
func SecretInNamespace(ns string) SecretOption
type TestSuite ¶
type TestSuite struct {
suite.Suite
Kubeconfig *rest.Config
Client client.Client
// Strongly-typed client handy for reading e.g. pod logs
KubeClient kubernetes.Interface
Clientset porchclient.Interface
Namespace string // K8s namespace for this test run
TestRunnerIsLocal bool // Tests running against local dev porch
// contains filtered or unexported fields
}
func (*TestSuite) AddMutator ¶ added in v1.4.0
func (t *TestSuite) AddMutator(resources *porchapi.PackageRevisionResources, image string, opts ...MutatorOption)
addMutator adds a mutator to the Kptfile pipeline of the resources (in-place)
func (*TestSuite) AddResourceToPackage ¶ added in v1.4.0
func (t *TestSuite) AddResourceToPackage(resources *porchapi.PackageRevisionResources, filePath string, name string)
func (*TestSuite) CompareGoldenFileYAML ¶
func (*TestSuite) CreateE ¶
func (t *TestSuite) CreateE(obj client.Object, opts ...client.CreateOption)
func (*TestSuite) CreateF ¶
func (t *TestSuite) CreateF(obj client.Object, opts ...client.CreateOption)
func (*TestSuite) CreateGcpPackageRevisionSecret ¶ added in v1.4.0
func (t *TestSuite) CreateGcpPackageRevisionSecret(name string, opts ...RepositoryOptions) string
func (*TestSuite) CreateGitRepo ¶
func (*TestSuite) CreateOrUpdateF ¶ added in v1.4.0
func (t *TestSuite) CreateOrUpdateF(obj client.Object, opts ...client.CreateOption)
func (*TestSuite) CreateOrUpdateSecret ¶ added in v1.4.0
func (*TestSuite) CreatePackageDraftF ¶ added in v1.3.1
func (t *TestSuite) CreatePackageDraftF(repository, packageName, workspace string) *porchapi.PackageRevision
Creates an empty package draft by initializing an empty package
func (*TestSuite) CreatePackageSkeleton ¶ added in v1.4.0
func (t *TestSuite) CreatePackageSkeleton(repoName, packageName, workspace string) *porchapi.PackageRevision
func (*TestSuite) DeleteE ¶
func (t *TestSuite) DeleteE(obj client.Object, opts ...client.DeleteOption)
func (*TestSuite) DeleteEH ¶ added in v1.4.0
func (t *TestSuite) DeleteEH(obj client.Object, eh ErrorHandler, opts ...client.DeleteOption)
DeleteEH calls delete with a custom ErrorHandler
func (*TestSuite) DeleteF ¶
func (t *TestSuite) DeleteF(obj client.Object, opts ...client.DeleteOption)
func (*TestSuite) DeleteL ¶
func (t *TestSuite) DeleteL(obj client.Object, opts ...client.DeleteOption)
func (*TestSuite) DumpLogsForDeploymentE ¶
func (*TestSuite) FindAndDecodeF ¶
func (t *TestSuite) FindAndDecodeF(resources *porchapi.PackageRevisionResources, name string, value interface{})
func (*TestSuite) GetContext ¶ added in v1.4.0
func (*TestSuite) GetPackageRevision ¶ added in v1.4.0
func (*TestSuite) Initialize ¶
func (t *TestSuite) Initialize()
func (*TestSuite) IsPorchServerInCluster ¶
func (*TestSuite) IsTestRunnerInCluster ¶
func (*TestSuite) ListE ¶
func (t *TestSuite) ListE(list client.ObjectList, opts ...client.ListOption)
func (*TestSuite) ListF ¶
func (t *TestSuite) ListF(list client.ObjectList, opts ...client.ListOption)
func (*TestSuite) MustFindPackageRevision ¶ added in v1.4.0
func (t *TestSuite) MustFindPackageRevision(packages *porchapi.PackageRevisionList, name repository.PackageRevisionKey) *porchapi.PackageRevision
func (*TestSuite) MustHaveLabels ¶ added in v1.4.0
func (*TestSuite) MustNotExist ¶ added in v1.3.1
func (*TestSuite) MustNotHaveLabels ¶ added in v1.4.0
func (*TestSuite) ParseKptfileF ¶
func (t *TestSuite) ParseKptfileF(resources *porchapi.PackageRevisionResources) *kptfilev1.KptFile
func (*TestSuite) RegisterGitRepositoryF ¶ added in v1.3.1
func (t *TestSuite) RegisterGitRepositoryF(repo, name, directory string, username string, password Password, opts ...RepositoryOptions)
func (*TestSuite) RegisterTestBlueprintRepository ¶ added in v1.4.0
func (t *TestSuite) RegisterTestBlueprintRepository(name, directory string, opts ...RepositoryOptions)
func (*TestSuite) RetriggerBackgroundJobForRepo ¶ added in v1.4.0
func (*TestSuite) SaveKptfileF ¶
func (t *TestSuite) SaveKptfileF(resources *porchapi.PackageRevisionResources, kptfile *kptfilev1.KptFile)
func (*TestSuite) SetupSuite ¶ added in v1.4.0
func (t *TestSuite) SetupSuite()
func (*TestSuite) UpdateApprovalF ¶
func (t *TestSuite) UpdateApprovalF(pr *porchapi.PackageRevision, opts metav1.UpdateOptions) *porchapi.PackageRevision
func (*TestSuite) UpdateApprovalL ¶ added in v1.4.0
func (t *TestSuite) UpdateApprovalL(pr *porchapi.PackageRevision, opts metav1.UpdateOptions) *porchapi.PackageRevision
func (*TestSuite) UpdateE ¶
func (t *TestSuite) UpdateE(obj client.Object, opts ...client.UpdateOption)
func (*TestSuite) UpdateF ¶
func (t *TestSuite) UpdateF(obj client.Object, opts ...client.UpdateOption)
func (*TestSuite) ValidateFinalizers ¶ added in v1.3.1
func (*TestSuite) ValidateLabelsAndAnnos ¶ added in v1.3.1
func (*TestSuite) ValidateOwnerReferences ¶ added in v1.3.1
func (t *TestSuite) ValidateOwnerReferences(name string, ownerRefs []metav1.OwnerReference)
func (*TestSuite) WaitUntilAllPackagesDeleted ¶ added in v1.3.1
func (*TestSuite) WaitUntilDraftPackageRevisionExists ¶ added in v1.3.1
func (t *TestSuite) WaitUntilDraftPackageRevisionExists(repository string, pkgName string) *porchapi.PackageRevision
func (*TestSuite) WaitUntilObjectDeleted ¶ added in v1.3.1
func (t *TestSuite) WaitUntilObjectDeleted(gvk schema.GroupVersionKind, namespacedName types.NamespacedName, d time.Duration)
func (*TestSuite) WaitUntilPackageRevisionExists ¶ added in v1.3.1
func (*TestSuite) WaitUntilPackageRevisionFulfillingConditionExists ¶ added in v1.3.1
func (t *TestSuite) WaitUntilPackageRevisionFulfillingConditionExists( timeout time.Duration, condition func(porchapi.PackageRevision) bool, ) (*porchapi.PackageRevision, error)
func (*TestSuite) WaitUntilPackageRevisionResourcesExists ¶ added in v1.3.1
func (t *TestSuite) WaitUntilPackageRevisionResourcesExists( key types.NamespacedName, ) *porchapi.PackageRevisionResources
func (*TestSuite) WaitUntilRepositoryDeleted ¶ added in v1.3.1
func (*TestSuite) WaitUntilRepositoryReady ¶ added in v1.3.1
WaitUntilRepositoryReady waits for up to 60 seconds for the repository with the provided name and namespace is ready, i.e. the Ready condition is true. It also queries for Functions and PackageRevisions, to ensure these are also ready - this is an artifact of the way we've implemented the aggregated apiserver, where the first fetch can sometimes be synchronous.
type TestSuiteWithGit ¶ added in v1.3.1
type TestSuiteWithGit struct {
TestSuite
// contains filtered or unexported fields
}
func (*TestSuiteWithGit) GitConfig ¶ added in v1.3.1
func (t *TestSuiteWithGit) GitConfig(name string) GitConfig
func (*TestSuiteWithGit) RegisterGitRepositoryWithDirectoryF ¶ added in v1.4.0
func (t *TestSuiteWithGit) RegisterGitRepositoryWithDirectoryF(name string, directory string, opts ...RepositoryOptions)
func (*TestSuiteWithGit) RegisterMainGitRepositoryF ¶ added in v1.3.1
func (t *TestSuiteWithGit) RegisterMainGitRepositoryF(name string, opts ...RepositoryOptions)
func (*TestSuiteWithGit) SetupEnvvars ¶ added in v1.4.0
func (t *TestSuiteWithGit) SetupEnvvars()
func (*TestSuiteWithGit) SetupSuite ¶ added in v1.4.0
func (t *TestSuiteWithGit) SetupSuite()
Click to show internal directories.
Click to hide internal directories.