github.com/redhat-appstudio/e2e-tests@v0.0.0-20230619105049-9a422b2094d7/tests/e2e-demos/config/types.go (about)

     1  package config
     2  
     3  // Define the basic specs for the configuration
     4  type WorkflowSpec struct {
     5  	// All tests configurations
     6  	Tests []TestSpec `yaml:"tests"`
     7  }
     8  
     9  // Set of tests to run in appstudio
    10  type TestSpec struct {
    11  	// The test name corresponding to an application
    12  	Name string `yaml:"name"`
    13  
    14  	// Indicate if a test can be skipped, by default is true
    15  	Skip bool `yaml:"skip,omitempty"`
    16  
    17  	// Name of the application created in the cluster
    18  	ApplicationName string `yaml:"applicationName"`
    19  
    20  	// Set of components with own specs
    21  	Components []ComponentSpec `yaml:"components"`
    22  }
    23  
    24  // Set k8s resource specific properties
    25  type K8sSpec struct {
    26  	// If set, will scale the replicas to the desired number
    27  	// This is a pointer to distinguish between explicit zero and not specified.
    28  	Replicas int `yaml:"replicas,omitempty"`
    29  }
    30  
    31  // Specs for a specific component to create in AppStudio
    32  type ComponentSpec struct {
    33  	// The component name which will be created
    34  	Name string `yaml:"name"`
    35  
    36  	// The type indicate if the component comes from a private source like quay or github. Possible values: "private" or "public"
    37  	Type string `yaml:"type"`
    38  
    39  	// Indicate the container value
    40  	ContainerSource string `yaml:"containerSource,omitempty"`
    41  
    42  	// Component language
    43  	Language string `yaml:"language"`
    44  
    45  	// Repository URL from where component will be created
    46  	GitSourceUrl string `yaml:"gitSourceUrl,omitempty"`
    47  
    48  	// Repository branch
    49  	GitSourceRevision string `yaml:"gitSourceRevision,omitempty"`
    50  
    51  	// Relative path inside the repository containing the component
    52  	GitSourceContext string `yaml:"gitSourceContext,omitempty"`
    53  
    54  	// An endpoint where the framework can ping to see if a component was deployed successfully
    55  	HealthEndpoint string `yaml:"healthz"`
    56  
    57  	// Set k8s resource specific properties
    58  	K8sSpec K8sSpec `yaml:"spec,omitempty"`
    59  
    60  	// Skip the deployment of a component in case not needed to deploy
    61  	SkipDeploymentCheck bool `yaml:"skipDeploy,omitempty"`
    62  }