configuration

package
v0.0.5 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2022 License: GPL-3.0 Imports: 4 Imported by: 0

Documentation

Overview

package configuration includes the definition of test suite configuration and the functions necessary to process the configuration

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AcceptedKernelTaintsInfo

type AcceptedKernelTaintsInfo struct {

	// Accepted modules that cause taints that we want to supply to the test suite
	Module string `yaml:"module" json:"module"`
}

AcceptedKernelTaintsInfo contains all certified operator request info

type CertifiedContainerRequestInfo

type CertifiedContainerRequestInfo struct {
	// Name is the name of the `operator bundle package name` or `image-version` that you want to check if exists in the RedHat catalog
	Name string `yaml:"name" json:"name"`

	// Repository is the name of the repository `rhel8` of the container
	// This is valid for container only and required field
	Repository string `yaml:"repository" json:"repository"`
}

CertifiedContainerRequestInfo contains all certified images request info

type CertifiedOperatorRequestInfo

type CertifiedOperatorRequestInfo struct {

	// Name is the name of the `operator bundle package name` that you want to check if exists in the RedHat catalog
	Name string `yaml:"name" json:"name"`

	// Organization as understood by the operator publisher , e.g. `redhat-marketplace`
	Organization string `yaml:"organization" json:"organization"`
}

CertifiedOperatorRequestInfo contains all certified operator request info

type ContainerImageIdentifier

type ContainerImageIdentifier struct {
	// Name is the name of the image that you want to check if exists in the RedHat catalog
	Name string `yaml:"name" json:"name"`

	// Repository is the name of the repository `rhel8` of the container
	// This is valid for container only and required field
	Repository string `yaml:"repository" json:"repository"`

	// Tag is the optional image tag. "latest" is implied if not specified
	Tag string `yaml:"tag" json:"tag"`

	// Digest is the image digest following the "@" in a URL, e.g. image@sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2
	Digest string `yaml:"digest" json:"digest"`
}

Tag and Digest should not be populated at the same time. Digest takes precedence if both are populated

type CrdFilter

type CrdFilter struct {
	NameSuffix string `yaml:"nameSuffix" json:"nameSuffix"`
}

CrdFilter defines a CustomResourceDefinition config filter.

type Label

type Label struct {
	Prefix string `yaml:"prefix" json:"prefix"`
	Name   string `yaml:"name" json:"name"`
	Value  string `yaml:"value" json:"value"`
}

Label ns/name/value for resource lookup

type Namespace

type Namespace struct {
	Name string `yaml:"name" json:"name"`
}

Namespace struct defines namespace properties

type SkipHelmChartList

type SkipHelmChartList struct {
	// Name is the name of the `operator bundle package name` or `image-version` that you want to check if exists in the RedHat catalog
	Name string `yaml:"name" json:"name"`
}

type TestConfiguration

type TestConfiguration struct {
	// targetNameSpaces to be used in
	TargetNameSpaces []Namespace `yaml:"targetNameSpaces" json:"targetNameSpaces"`
	// Custom Pod labels for discovering containers/pods under test
	TargetPodLabels []Label `yaml:"targetPodLabels,omitempty" json:"targetPodLabels,omitempty"`
	// CertifiedContainerInfo is the list of container images to be checked for certification status.
	CertifiedContainerInfo []ContainerImageIdentifier `yaml:"certifiedcontainerinfo,omitempty" json:"certifiedcontainerinfo,omitempty"`
	// CertifiedOperatorInfo is list of operator bundle names that are queried for certification status.
	CertifiedOperatorInfo []CertifiedOperatorRequestInfo `yaml:"certifiedoperatorinfo,omitempty" json:"certifiedoperatorinfo,omitempty"`
	// CRDs section.
	CrdFilters []CrdFilter `yaml:"targetCrdFilters" json:"targetCrdFilters"`
	// AcceptedKernelTaints
	AcceptedKernelTaints []AcceptedKernelTaintsInfo `yaml:"acceptedKernelTaints,omitempty" json:"acceptedKernelTaints,omitempty"`
	SkipHelmChartList    []SkipHelmChartList        `yaml:"skipHelmChartList" json:"skipHelmChartList"`
	// CheckDiscoveredContainerCertificationStatus controls whether the container certification test will validate images used by autodiscovered containers, in addition to the configured image list
	CheckDiscoveredContainerCertificationStatus bool `yaml:"checkDiscoveredContainerCertificationStatus" json:"checkDiscoveredContainerCertificationStatus"`
}

TestConfiguration provides test related configuration

func GetConfiguration

func GetConfiguration() TestConfiguration

func LoadConfiguration

func LoadConfiguration(filePath string) (TestConfiguration, error)

LoadConfiguration return a function that loads the configuration from a file once

type TestParameters

type TestParameters struct {
	Home              string `envconfig:"home"`
	Kubeconfig        string `envconfig:"kubeconfig"`
	ConfigurationPath string `split_words:"true" default:"tnf_config.yml"`
	NonIntrusiveOnly  bool   `split_words:"true"`
	NonOcpCluster     bool   `split_words:"true" default:"false"`
	LogLevel          string `default:"debug" split_words:"true"`
}

func GetTestParameters

func GetTestParameters() *TestParameters

Jump to

Keyboard shortcuts

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