ci

package
v1.5.1-prerelease.4 Latest Latest
Warning

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

Go to latest
Published: Feb 15, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Critical = Label("Critical")

importance

View Source
var Day1 = Label("day1")

day1/day1-post and day2

View Source
var Day1Negative = Label("day1-negative")
View Source
var Day1Post = Label("day1-post")
View Source
var Day1Prepare = Label("day1-prepare")
View Source
var Day2 = Label("day2")
View Source
var Day3 = Label("day3")

day3 : the test cases will destroy default resource

View Source
var Destroy = Label("destroy")

destroy

View Source
var Exclude = Label("Exclude")

exclude

View Source
var FeatureIDP = Label("feature-idp")
View Source
var FeatureImport = Label("feature-import")
View Source
var FeatureMachinepool = Label("feature-machinepool")

Features

View Source
var High = Label("High")
View Source
var Low = Label("Low")
View Source
var Medium = Label("Medium")
View Source
var (
	RHCSConnection = createConnectionWithToken(RHCSOCMToken)
)

Regular users in the organization 'Red Hat-Service Delivery-tester'

View Source
var (
	RHCSOCMToken = os.Getenv(CON.TokenENVName)
)
View Source
var Update = Label("update")
View Source
var Upgrade = Label("upgrade")

Functions

func ConvertFilterToString added in v1.4.0

func ConvertFilterToString(qs interface{}) (filter string)

ConvertFilterToString will Convert a fileter struct to a string if "like" in the value will be keeped if no 'like' in value, the string will contains key=value if map in value the substring will be key.subkey='subvalue'

func ConvertToMap added in v1.4.0

func ConvertToMap(qs interface{}) map[string]interface{}

func ConvertToStringArray added in v1.4.0

func ConvertToStringArray(interfaceList []interface{}) []string

ConvertToStringArray will convert the []interface to []string

func ConvertToStringMap added in v1.4.0

func ConvertToStringMap(interfaceMap map[string]interface{}) map[string]string

ConvertToStringMap will convert the []interface to []string

func CreateRHCSClusterByProfile

func CreateRHCSClusterByProfile(token string, profile *Profile) (string, error)

func DestroyRHCSClusterByProfile added in v1.4.0

func DestroyRHCSClusterByProfile(token string, profile *Profile) error

func ElementInArray added in v1.4.0

func ElementInArray(target string, str_array []string) bool

check if one element is in the array. if yes, return true; or return false

func GenerateClusterCreationArgsByProfile

func GenerateClusterCreationArgsByProfile(token string, profile *Profile) (clusterArgs *EXE.ClusterCreationArgs, manifestsDir string, err error)

func GetElements added in v1.4.0

func GetElements(content map[string]interface{}, element string, num ...int) interface{}

GetElements will return an array or a string get from the items based on the num If num 0 and itemkey id passed it will return the itemkey value with index 0

func GetMajorVersion added in v1.5.1

func GetMajorVersion(rawVersion string) string

func GetYAMLProfileFile added in v1.4.0

func GetYAMLProfileFile(fileName string) (filename string)

func PrepareAccountRoles

func PrepareAccountRoles(token string, accountRolePrefix string, accountRolesPath string, awsRegion string, openshiftVersion string, channelGroup string, manifestDir string) (
	*EXE.AccountRolesOutput, error)

func PrepareAdditionalSecurityGroups added in v1.5.0

func PrepareAdditionalSecurityGroups(region string, vpcID string, sgNumbers int) ([]string, error)

func PrepareKMSKey

func PrepareKMSKey(profile *Profile, kmsName string, accountRolePrefix string, accountRolePath string) (string, error)

func PrepareOIDCProviderAndOperatorRoles added in v1.4.0

func PrepareOIDCProviderAndOperatorRoles(token string, oidcConfigType string, operatorRolePrefix string, accountRolePrefix string, accountRolesPath string, awsRegion string) (
	*EXE.OIDCProviderOperatorRolesOutput, error)

func PrepareProxy

func PrepareProxy(region string, VPCID string, subnetPublicID string) (*EXE.ProxyOutput, error)

func PrepareRHCSClusterByProfileENV added in v1.4.0

func PrepareRHCSClusterByProfileENV() (string, error)

PrepareRHCSClusterByProfileENV will be used for all day2 tests. Do not need to create a cluster, it needs an existing cluster Two ways:

  • If you created a cluster by other way, you can Export CLUSTER_ID=<cluster id>
  • If you are using this CI created the cluster, just need to Export CLUSTER_PROFILE=<profile name>

func PrepareRoute53

func PrepareRoute53()

func PrepareVPC

func PrepareVPC(region string, privateLink bool, multiZone bool, azIDs []string, name ...string) (*EXE.VPCOutput, error)

func PrepareVersion added in v1.4.0

func PrepareVersion(connection *client.Connection, versionTag string, channelGroup string, profile *Profile) string

PrepareVersion supports below types version with a openshift version like 4.13.12 version with latest verion with x-1, it means the version will choose one with x-1 version which can be used for x stream upgrade version with y-1, it means the version will choose one with y-1 version which can be used for y stream upgrade

func TrimName added in v1.4.0

func TrimName(name string) string

func TrimVersion added in v1.4.0

func TrimVersion(version string, groupChannel string) string

Types

type Profile

type Profile struct {
	Name                  string `ini:"name,omitempty" json:"name,omitempty"`
	ClusterName           string `ini:"cluster_name,omitempty" json:"cluster_name,omitempty"`
	ProductID             string `ini:"product_id,omitempty" json:"product_id,omitempty"`
	MajorVersion          string `ini:"major_version,omitempty" json:"major_version,omitempty"`
	Version               string `ini:"version,omitempty" json:"version,omitempty"`                 //Specific OCP version to be specified
	VersionPattern        string `ini:"version_pattern,omitempty" json:"version_pattern,omitempty"` //Version supports indicated version started with openshift-v or major-1 (y-1) or minor-1 (z-1)
	ChannelGroup          string `ini:"channel_group,omitempty" json:"channel_group,omitempty"`
	CloudProvider         string `ini:"cloud_provider,omitempty" json:"cloud_provider,omitempty"`
	Region                string `ini:"region,omitempty" json:"region,omitempty"`
	InstanceType          string `ini:"instance_type,omitempty" json:"instance_type,omitempty"`
	Zones                 string `ini:"zones,omitempty" json:"zones,omitempty"`           // zones should be like a,b,c,d
	StorageLB             bool   `ini:"storage_lb,omitempty" json:"storage_lb,omitempty"` // the unit is GIB, don't support unit set
	Tagging               bool   `ini:"tagging,omitempty" json:"tagging,omitempty"`
	Labeling              bool   `ini:"labeling,omitempty" json:"labeling,omitempty"`
	Etcd                  bool   `ini:"etcd_encryption,omitempty" json:"etcd_encryption,omitempty"`
	FIPS                  bool   `ini:"fips,omitempty" json:"fips,omitempty"`
	CCS                   bool   `ini:"ccs,omitempty" json:"ccs,omitempty"`
	STS                   bool   `ini:"sts,omitempty" json:"sts,omitempty"`
	Autoscale             bool   `ini:"autoscaling_enabled,omitempty" json:"autoscaling_enabled,omitempty"`
	MultiAZ               bool   `ini:"multi_az,omitempty" json:"multi_az,omitempty"`
	BYOVPC                bool   `ini:"byovpc,omitempty" json:"byovpc,omitempty"`
	PrivateLink           bool   `ini:"private_link,omitempty" json:"private_link,omitempty"`
	Private               bool   `ini:"private,omitempty" json:"private,omitempty"`
	BYOK                  bool   `ini:"byok,omitempty" json:"byok,omitempty"`
	KMSKey                bool   `ini:"kms_key_arn,omitempty" json:"kms_key_arn,omitempty"`
	NetWorkingSet         bool   `ini:"networking_set,omitempty" json:"networking_set,omitempty"`
	Proxy                 bool   `ini:"proxy,omitempty" json:"proxy,omitempty"`
	Hypershift            bool   `ini:"hypershift,omitempty" json:"hypershift,omitempty"`
	OIDCConfig            string `ini:"oidc_config,omitempty" json:"oidc_config,omitempty"`
	ProvisionShard        string `ini:"provisionShard,omitempty" json:"provisionShard,omitempty"`
	Ec2MetadataHttpTokens string `ini:"imdsv2,omitempty" json:"imdsv2,omitempty"`
	ComputeMachineType    string `ini:"compute_machine_type,omitempty" json:"compute_machine_type,omitempty"`
	AuditLogForward       bool   `ini:"auditlog_forward,omitempty" json:"auditlog_forward,omitempty"`
	AdminEnabled          bool   `ini:"admin_enabled,omitempty" json:"admin_enabled,omitempty"`
	ManagedPolicies       bool   `ini:"managed_policies,omitempty" json:"managed_policies,omitempty"`
	WorkerDiskSize        int    `ini:"worker_disk_size,omitempty" json:"worker_disk_size,omitempty"`
	AdditionalSGNumber    int    `ini:"additional_sg_number,omitempty" json:"additional_sg_number,omitempty"`
	ManifestsDIR          string `ini:"manifests_dir,omitempty" json:"manifests_dir,omitempty"`
	UnifiedAccRolesPath   string `ini:"unified_acc_role_path,omitempty" json:"unified_acc_role_path,omitempty"`
}

Profile Provides profile struct for cluster creation be matrix

func LoadProfileYamlFile added in v1.4.0

func LoadProfileYamlFile(profileName string) *Profile

func LoadProfileYamlFileByENV added in v1.4.0

func LoadProfileYamlFileByENV() *Profile

type Response added in v1.4.0

type Response struct {
	StatusCode int
	Body       []byte
}

func (*Response) Bytes added in v1.4.0

func (r *Response) Bytes() []byte

func (*Response) Status added in v1.4.0

func (r *Response) Status() int

func (*Response) String added in v1.4.0

func (r *Response) String() string

Jump to

Keyboard shortcuts

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