github.com/kubeshop/testkube@v1.17.23/pkg/api/v1/testkube/model_execution.go (about)

     1  /*
     2   * Testkube API
     3   *
     4   * Testkube provides a Kubernetes-native framework for test definition, execution and results
     5   *
     6   * API version: 1.0.0
     7   * Contact: testkube@kubeshop.io
     8   * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
     9   */
    10  package testkube
    11  
    12  import (
    13  	"time"
    14  )
    15  
    16  // test execution
    17  type Execution struct {
    18  	// execution id
    19  	Id string `json:"id,omitempty"`
    20  	// unique test name (CRD Test name)
    21  	TestName string `json:"testName,omitempty"`
    22  	// unique test suite name (CRD Test suite name), if it's run as a part of test suite
    23  	TestSuiteName string `json:"testSuiteName,omitempty"`
    24  	// test namespace
    25  	TestNamespace string `json:"testNamespace,omitempty"`
    26  	// test type e.g. postman/collection
    27  	TestType string `json:"testType,omitempty"`
    28  	// execution name
    29  	Name string `json:"name,omitempty"`
    30  	// execution number
    31  	Number int32 `json:"number,omitempty"`
    32  	// Environment variables passed to executor.
    33  	// Deprecated: use Basic Variables instead
    34  	Envs map[string]string `json:"envs,omitempty"`
    35  	// executor image command
    36  	Command []string `json:"command,omitempty"`
    37  	// additional arguments/flags passed to executor binary
    38  	Args []string `json:"args,omitempty"`
    39  	// usage mode for arguments
    40  	ArgsMode  string              `json:"args_mode,omitempty"`
    41  	Variables map[string]Variable `json:"variables,omitempty"`
    42  	// in case the variables file is too big, it will be uploaded to storage
    43  	IsVariablesFileUploaded bool `json:"isVariablesFileUploaded,omitempty"`
    44  	// variables file content - need to be in format for particular executor (e.g. postman envs file)
    45  	VariablesFile string `json:"variablesFile,omitempty"`
    46  	// test secret uuid
    47  	TestSecretUUID string `json:"testSecretUUID,omitempty"`
    48  	// test suite secret uuid, if it's run as a part of test suite
    49  	TestSuiteSecretUUID string       `json:"testSuiteSecretUUID,omitempty"`
    50  	Content             *TestContent `json:"content,omitempty"`
    51  	// test start time
    52  	StartTime time.Time `json:"startTime,omitempty"`
    53  	// test end time
    54  	EndTime time.Time `json:"endTime,omitempty"`
    55  	// test duration
    56  	Duration string `json:"duration,omitempty"`
    57  	// test duration in milliseconds
    58  	DurationMs      int32            `json:"durationMs,omitempty"`
    59  	ExecutionResult *ExecutionResult `json:"executionResult,omitempty"`
    60  	// test and execution labels
    61  	Labels map[string]string `json:"labels,omitempty"`
    62  	// list of file paths that need to be copied into the test from uploads
    63  	Uploads []string `json:"uploads,omitempty"`
    64  	// minio bucket name to get uploads from
    65  	BucketName      string           `json:"bucketName,omitempty"`
    66  	ArtifactRequest *ArtifactRequest `json:"artifactRequest,omitempty"`
    67  	// script to run before test execution
    68  	PreRunScript string `json:"preRunScript,omitempty"`
    69  	// script to run after test execution
    70  	PostRunScript string `json:"postRunScript,omitempty"`
    71  	// execute post run script before scraping (prebuilt executor only)
    72  	ExecutePostRunScriptBeforeScraping bool `json:"executePostRunScriptBeforeScraping,omitempty"`
    73  	// run scripts using source command (container executor only)
    74  	SourceScripts  bool            `json:"sourceScripts,omitempty"`
    75  	RunningContext *RunningContext `json:"runningContext,omitempty"`
    76  	// shell used in container executor
    77  	ContainerShell string `json:"containerShell,omitempty"`
    78  	// test execution name started the test execution
    79  	TestExecutionName string `json:"testExecutionName,omitempty"`
    80  	// execution ids for artifacts to download
    81  	DownloadArtifactExecutionIDs []string `json:"downloadArtifactExecutionIDs,omitempty"`
    82  	// test names for artifacts to download from latest executions
    83  	DownloadArtifactTestNames []string    `json:"downloadArtifactTestNames,omitempty"`
    84  	SlavePodRequest           *PodRequest `json:"slavePodRequest,omitempty"`
    85  	// namespace for test execution (Pro edition only)
    86  	ExecutionNamespace string `json:"executionNamespace,omitempty"`
    87  }