github.com/kubeshop/testkube@v1.17.23/docs/docs/articles/crds-reference.md (about) 1 # CRDs Reference 2 3 CRDs (Custom Resource Definitions) reference. Read more Testkube's CRDs in [Testkube Custom Resources](./crds.md) section. 4 5 ## Packages 6 7 - [executor.testkube.io/v1](#executortestkubeiov1) 8 - [tests.testkube.io/v1](#teststestkubeiov1) 9 - [tests.testkube.io/v2](#teststestkubeiov2) 10 - [tests.testkube.io/v3](#teststestkubeiov3) 11 12 ## executor.testkube.io/v1 13 14 Package v1 contains API Schema definitions for the executor v1 API group. 15 16 ### Resource Types 17 18 - [Executor](#executor) 19 - [ExecutorList](#executorlist) 20 - [Webhook](#webhook) 21 - [WebhookList](#webhooklist) 22 23 #### EventType 24 25 _Underlying type:_ `string` 26 27 _Appears in:_ 28 29 - [WebhookSpec](#webhookspec) 30 31 #### Executor 32 33 Executor is the Schema for the executors API. 34 35 _Appears in:_ 36 37 - [ExecutorList](#executorlist) 38 39 | Field | Description | 40 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 41 | `apiVersion` _string_ | `executor.testkube.io/v1` | 42 | `kind` _string_ | `Executor` | 43 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 44 | `spec` _[ExecutorSpec](#executorspec)_ | | 45 46 #### ExecutorList 47 48 ExecutorList contains a list of Executors. 49 50 | Field | Description | 51 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 52 | `apiVersion` _string_ | `executor.testkube.io/v1` | 53 | `kind` _string_ | `ExecutorList` | 54 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 55 | `items` _[Executor](#executor) array_ | | 56 57 #### ExecutorMeta 58 59 Executor meta data. 60 61 _Appears in:_ 62 63 - [ExecutorSpec](#executorspec) 64 65 | Field | Description | 66 | ------------------------------------------------ | --------------------- | 67 | `iconURI` _string_ | URI for executor icon | 68 | `docsURI` _string_ | URI for executor docs | 69 | `tooltips` _object (keys:string, values:string)_ | executor tooltips | 70 71 #### ExecutorSpec 72 73 ExecutorSpec defines the desired state of the Executor. 74 75 _Appears in:_ 76 77 - [Executor](#executor) 78 79 | Field | Description | 80 | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | 81 | `types` _string array_ | Types defines what types can be handled by executor e.g. "postman/collection", ":curl/command", etc. | 82 | `executor_type` _[ExecutorType](#executortype)_ | ExecutorType one of "rest" for rest openapi based executors or "job" which will be default runners for testkube or "container" for container executors. | 83 | `uri` _string_ | URI for rest-based executors. | 84 | `image` _string_ | Image for kube-job. | 85 | `args` _string array_ | Executor binary arguments. | 86 | `command` _string array_ | Executor default binary command. | 87 | `imagePullSecrets` _[LocalObjectReference](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#localobjectreference-v1-core) array_ | Container executor default image pull secrets. | 88 | `features` _[Feature](#feature) array_ | Features list of Possible features which the executor handles. | 89 | `content_types` _[ScriptContentType](#scriptcontenttype) array_ | ContentTypes lists the handled content types. | 90 | `job_template` _string_ | Job template to launch executor. | 91 | `meta` _[ExecutorMeta](#executormeta)_ | Meta data about the executor. | 92 93 #### ExecutorType 94 95 _Underlying type:_ `string` 96 97 _Appears in:_ 98 99 - [ExecutorSpec](#executorspec) 100 101 #### Feature 102 103 _Underlying type:_ `string` 104 105 _Appears in:_ 106 107 - [ExecutorSpec](#executorspec) 108 109 #### ScriptContentType 110 111 _Underlying type:_ `string` 112 113 _Appears in:_ 114 115 - [ExecutorSpec](#executorspec) 116 117 #### Webhook 118 119 Webhook is the Schema for the webhooks API. 120 121 _Appears in:_ 122 123 - [WebhookList](#webhooklist) 124 125 | Field | Description | 126 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 127 | `apiVersion` _string_ | `executor.testkube.io/v1` | 128 | `kind` _string_ | `Webhook` | 129 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 130 | `spec` _[WebhookSpec](#webhookspec)_ | | 131 132 #### WebhookList 133 134 WebhookList contains a list of Webhooks. 135 136 | Field | Description | 137 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 138 | `apiVersion` _string_ | `executor.testkube.io/v1` | 139 | `kind` _string_ | `WebhookList` | 140 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 141 | `items` _[Webhook](#webhook) array_ | | 142 143 #### WebhookSpec 144 145 WebhookSpec defines the desired state of a Webhook. 146 147 _Appears in:_ 148 149 - [Webhook](#webhook) 150 151 | Field | Description | 152 | ----------------------------------------------- | ------------------------------------------------------------------ | 153 | `uri` _string_ | The URI is the address where the webhook should be made. | 154 | `events` _[EventType](#eventtype) array_ | Events declares a list of events on which webhook should be called. | 155 | `selector` _string_ | Labels to filter for tests and test suites. | 156 | `payloadObjectField` _string_ | Will load the generated payload for notification inside the object. | 157 | `payloadTemplate` _string_ | Golang based template for notification payload. | 158 | `headers` _object (keys:string, values:string)_ | Webhook headers. | 159 160 ## tests.testkube.io/v1 161 162 Package v1 contains API Schema definitions for the testkube v1 API group. 163 164 ### Resource Types 165 166 - [Script](#script) 167 - [ScriptList](#scriptlist) 168 - [Test](#test) 169 - [TestList](#testlist) 170 - [TestSource](#testsource) 171 - [TestSourceList](#testsourcelist) 172 - [TestSuite](#testsuite) 173 - [TestSuiteList](#testsuitelist) 174 - [TestTrigger](#testtrigger) 175 - [TestTriggerList](#testtriggerlist) 176 177 #### GitAuthType 178 179 _Underlying type:_ `string` 180 181 GitAuthType defines git auth type. 182 183 _Appears in:_ 184 185 - [Repository](#repository) 186 187 #### Repository 188 189 Repository represents VCS repo, currently we're handling Git only. 190 191 _Appears in:_ 192 193 - [TestSourceSpec](#testsourcespec) 194 195 | Field | Description | 196 | ------------------------------------------ | ---------------------------------------------------------------------------------------- | 197 | `type` _string_ | VCS repository type. | 198 | `uri` _string_ | URI of content file or Git directory. | 199 | `branch` _string_ | Branch/tag name for checkout. | 200 | `commit` _string_ | Commit id (sha) for checkout. | 201 | `path` _string_ | If needed, we can checkout a particular path (dir or file) in case of BIG/mono repositories. | 202 | `usernameSecret` _[SecretRef](#secretref)_ | | 203 | `tokenSecret` _[SecretRef](#secretref)_ | | 204 | `certificateSecret` _string_ | Git auth certificate, secret for private repositories. | 205 | `workingDir` _string_ | If provided, we checkout the whole repository and run the test from this directory. | 206 | `authType` _[GitAuthType](#gitauthtype)_ | Auth type for Git requests. | 207 208 #### Script 209 210 Script is the Schema for the scripts API. 211 212 _Appears in:_ 213 214 - [ScriptList](#scriptlist) 215 216 | Field | Description | 217 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 218 | `apiVersion` _string_ | `tests.testkube.io/v1` | 219 | `kind` _string_ | `Script` | 220 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 221 | `spec` _[ScriptSpec](#scriptspec)_ | | 222 223 #### ScriptList 224 225 ScriptList contains a list of scripts. 226 227 | Field | Description | 228 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 229 | `apiVersion` _string_ | `tests.testkube.io/v1` | 230 | `kind` _string_ | `ScriptList` | 231 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 232 | `items` _[Script](#script) array_ | | 233 234 #### ScriptSpec 235 236 ScriptSpec defines the desired state of a script. 237 238 _Appears in:_ 239 240 - [Script](#script) 241 242 | Field | Description | 243 | ---------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 244 | `type` _string_ | Script type. | 245 | `name` _string_ | Script execution custom name. | 246 | `params` _object (keys:string, values:string)_ | Execution params passed to executor. | 247 | `content` _string_ | Script content as string (content depends on the executor). | 248 | `input-type` _string_ | Script content type can be: (1) direct content - created from file, (2) Git repo directory checkout, in case the test is some kind of project or has more than one file. | 249 | `repository` _[Repository](#repository)_ | Repository details, if they exist. | 250 | `tags` _string array_ | | 251 252 #### SecretRef 253 254 Testkube internal reference for secret storage in Kubernetes secrets. 255 256 _Appears in:_ 257 258 - [Repository](#repository) 259 260 | Field | Description | 261 | -------------------- | --------------------------- | 262 | `namespace` _string_ | object kubernetes namespace | 263 | `name` _string_ | object name | 264 | `key` _string_ | object key | 265 266 #### Test 267 268 Test is the Schema for the tests API. 269 270 _Appears in:_ 271 272 - [TestList](#testlist) 273 274 | Field | Description | 275 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 276 | `apiVersion` _string_ | `tests.testkube.io/v1` | 277 | `kind` _string_ | `Test` | 278 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 279 | `spec` _[TestSpec](#testspec)_ | | 280 281 #### TestList 282 283 TestList contains a list of Tests. 284 285 | Field | Description | 286 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 287 | `apiVersion` _string_ | `tests.testkube.io/v1` | 288 | `kind` _string_ | `TestList` | 289 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 290 | `items` _[Test](#test) array_ | | 291 292 #### TestSource 293 294 TestSource is the the Schema for the testsources API. 295 296 _Appears in:_ 297 298 - [TestSourceList](#testsourcelist) 299 300 | Field | Description | 301 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 302 | `apiVersion` _string_ | `tests.testkube.io/v1` | 303 | `kind` _string_ | `TestSource` | 304 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 305 | `spec` _[TestSourceSpec](#testsourcespec)_ | | 306 307 #### TestSourceList 308 309 TestSourceList contains a list of TestSources. 310 311 | Field | Description | 312 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 313 | `apiVersion` _string_ | `tests.testkube.io/v1` | 314 | `kind` _string_ | `TestSourceList` | 315 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 316 | `items` _[TestSource](#testsource) array_ | | 317 318 #### TestSourceSpec 319 320 TestSourceSpec defines the desired state of TestSource. 321 322 _Appears in:_ 323 324 - [TestSource](#testsource) 325 326 | Field | Description | 327 | ------------------------------------------ | -------------------------- | 328 | `type` _[TestSourceType](#testsourcetype)_ | | 329 | `repository` _[Repository](#repository)_ | repository of test content | 330 | `data` _string_ | test content body | 331 | `uri` _string_ | uri of test content | 332 333 #### TestSourceType 334 335 _Underlying type:_ `string` 336 337 _Appears in:_ 338 339 - [TestSourceSpec](#testsourcespec) 340 341 #### TestSpec 342 343 TestSpec defines the desired state of the Test. 344 345 _Appears in:_ 346 347 - [Test](#test) 348 349 | Field | Description | 350 | ---------------------------------------------- | ----------------------------------------------------------------------- | 351 | `before` _[TestStepSpec](#teststepspec) array_ | Before steps is a list of scripts which will be sequentially orchestrated. | 352 | `steps` _[TestStepSpec](#teststepspec) array_ | Steps is a list of scripts which will be sequentially orchestrated. | 353 | `after` _[TestStepSpec](#teststepspec) array_ | After steps is a list of scripts which will be sequentially orchestrated. | 354 | `repeats` _integer_ | | 355 | `description` _string_ | | 356 | `tags` _string array_ | | 357 358 #### TestStepDelay 359 360 _Appears in:_ 361 362 - [TestStepSpec](#teststepspec) 363 364 | Field | Description | 365 | -------------------- | -------------- | 366 | `duration` _integer_ | Duration in ms | 367 368 #### TestStepExecute 369 370 _Appears in:_ 371 372 - [TestStepSpec](#teststepspec) 373 374 | Field | Description | 375 | ------------------------- | ----------- | 376 | `namespace` _string_ | | 377 | `name` _string_ | | 378 | `stopOnFailure` _boolean_ | | 379 380 #### TestStepSpec 381 382 TestStepSpec of particular type will have config for possible step types. 383 384 _Appears in:_ 385 386 - [TestSpec](#testspec) 387 388 | Field | Description | 389 | ----------------------------------------------- | ----------- | 390 | `type` _string_ | | 391 | `execute` _[TestStepExecute](#teststepexecute)_ | | 392 | `delay` _[TestStepDelay](#teststepdelay)_ | | 393 394 #### TestSuite 395 396 TestSuite is the Schema for the testsuites API. 397 398 _Appears in:_ 399 400 - [TestSuiteList](#testsuitelist) 401 402 | Field | Description | 403 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 404 | `apiVersion` _string_ | `tests.testkube.io/v1` | 405 | `kind` _string_ | `TestSuite` | 406 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 407 | `spec` _[TestSuiteSpec](#testsuitespec)_ | | 408 409 #### TestSuiteList 410 411 TestSuiteList contains a list of TestSuites. 412 413 | Field | Description | 414 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 415 | `apiVersion` _string_ | `tests.testkube.io/v1` | 416 | `kind` _string_ | `TestSuiteList` | 417 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 418 | `items` _[TestSuite](#testsuite) array_ | | 419 420 #### TestSuiteSpec 421 422 TestSuiteSpec defines the desired state of a TestSuite. 423 424 _Appears in:_ 425 426 - [TestSuite](#testsuite) 427 428 | Field | Description | 429 | ---------------------------------------------------------------- | --------------------------------------------------------------------- | 430 | `before` _[TestSuiteStepSpec](#testsuitestepspec) array_ | Before steps is a list of tests which will be sequentially orchestrated. | 431 | `steps` _[TestSuiteStepSpec](#testsuitestepspec) array_ | Steps is a list of tests which will be sequentially orchestrated. | 432 | `after` _[TestSuiteStepSpec](#testsuitestepspec) array_ | After steps is a list of tests which will be sequentially orchestrated. | 433 | `repeats` _integer_ | | 434 | `description` _string_ | | 435 | `schedule` _string_ | Schedule in cron job format for scheduled test execution. | 436 | `params` _object (keys:string, values:string)_ | DEPRECATED execution params passed to the executor. | 437 | `variables` _object (keys:string, values:[Variable](#variable))_ | Variables are new params with secrets attached. | 438 439 #### TestSuiteStepDelay 440 441 TestSuiteStepDelay contains step delay parameters. 442 443 _Appears in:_ 444 445 - [TestSuiteStepSpec](#testsuitestepspec) 446 447 | Field | Description | 448 | -------------------- | -------------- | 449 | `duration` _integer_ | Duration in ms | 450 451 #### TestSuiteStepExecute 452 453 TestSuiteStepExecute defines the step to be executed. 454 455 _Appears in:_ 456 457 - [TestSuiteStepSpec](#testsuitestepspec) 458 459 | Field | Description | 460 | ------------------------- | ----------- | 461 | `namespace` _string_ | | 462 | `name` _string_ | | 463 | `stopOnFailure` _boolean_ | | 464 465 #### TestSuiteStepSpec 466 467 TestSuiteStepSpec of a particular type will have config for possible step types. 468 469 _Appears in:_ 470 471 - [TestSuiteSpec](#testsuitespec) 472 473 | Field | Description | 474 | --------------------------------------------------------- | ----------- | 475 | `type` _string_ | | 476 | `execute` _[TestSuiteStepExecute](#testsuitestepexecute)_ | | 477 | `delay` _[TestSuiteStepDelay](#testsuitestepdelay)_ | | 478 479 #### TestTrigger 480 481 TestTrigger is the Schema for the testtriggers API. 482 483 _Appears in:_ 484 485 - [TestTriggerList](#testtriggerlist) 486 487 | Field | Description | 488 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 489 | `apiVersion` _string_ | `tests.testkube.io/v1` | 490 | `kind` _string_ | `TestTrigger` | 491 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 492 | `spec` _[TestTriggerSpec](#testtriggerspec)_ | | 493 494 #### TestTriggerAction 495 496 _Underlying type:_ `string` 497 498 TestTriggerAction defines action for test triggers. 499 500 _Appears in:_ 501 502 - [TestTriggerSpec](#testtriggerspec) 503 504 #### TestTriggerCondition 505 506 TestTriggerCondition is used for definition of the condition for test triggers. 507 508 _Appears in:_ 509 510 - [TestTriggerConditionSpec](#testtriggerconditionspec) 511 512 | Field | Description | 513 | ----------------- | ----------------------------------------------------------------------------------- | 514 | `type` _string_ | Test trigger condition. | 515 | `reason` _string_ | Test trigger condition reason. | 516 | `ttl` _integer_ | Duration in seconds in the past from current time when the condition is still valid. | 517 518 #### TestTriggerConditionSpec 519 520 TestTriggerConditionSpec defines the condition specification for the TestTrigger. 521 522 _Appears in:_ 523 524 - [TestTriggerSpec](#testtriggerspec) 525 526 | Field | Description | 527 | ------------------------------------------------------------------ | ---------------------------------------------------------------------------- | 528 | `conditions` _[TestTriggerCondition](#testtriggercondition) array_ | List of test trigger conditions. | 529 | `timeout` _integer_ | Duration in seconds the test trigger waits for conditions, until it is stopped. | 530 531 #### TestTriggerEvent 532 533 _Underlying type:_ `string` 534 535 TestTriggerEvent defines an event for test triggers. 536 537 _Appears in:_ 538 539 - [TestTriggerSpec](#testtriggerspec) 540 541 #### TestTriggerExecution 542 543 _Underlying type:_ `string` 544 545 TestTriggerExecution defines execution for test triggers. 546 547 _Appears in:_ 548 549 - [TestTriggerSpec](#testtriggerspec) 550 551 #### TestTriggerList 552 553 TestTriggerList contains a list of TestTriggers. 554 555 | Field | Description | 556 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 557 | `apiVersion` _string_ | `tests.testkube.io/v1` | 558 | `kind` _string_ | `TestTriggerList` | 559 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 560 | `items` _[TestTrigger](#testtrigger) array_ | | 561 562 #### TestTriggerResource 563 564 _Underlying type:_ `string` 565 566 TestTriggerResource defines the resource for test triggers. 567 568 _Appears in:_ 569 570 - [TestTriggerSpec](#testtriggerspec) 571 572 #### TestTriggerSelector 573 574 TestTriggerSelector is used for selecting Kubernetes Objects. 575 576 _Appears in:_ 577 578 - [TestTriggerSpec](#testtriggerspec) 579 580 | Field | Description | 581 | ----------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | 582 | `name` _string_ | Name selector is used to identify a Kubernetes Object based on the metadata name. | 583 | `namespace` _string_ | Namespace of the Kubernetes object. | 584 | `labelSelector` _[LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#labelselector-v1-meta)_ | LabelSelector is used to identify a group of Kubernetes Objects based on their metadata labels. | 585 586 #### TestTriggerSpec 587 588 TestTriggerSpec defines the desired state of a TestTrigger. 589 590 _Appears in:_ 591 592 - [TestTrigger](#testtrigger) 593 594 | Field | Description | 595 | ----------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | 596 | `resource` _[TestTriggerResource](#testtriggerresource)_ | Defines the Resource monitor Event which triggers an Action on certain conditions. | 597 | `resourceSelector` _[TestTriggerSelector](#testtriggerselector)_ | ResourceSelector identifies which Kubernetes Objects should be watched. | 598 | `event` _[TestTriggerEvent](#testtriggerevent)_ | Defines the Event on which a Resource an Action should be triggered. | 599 | `conditionSpec` _[TestTriggerConditionSpec](#testtriggerconditionspec)_ | Which resource conditions should be matched. | 600 | `action` _[TestTriggerAction](#testtriggeraction)_ | Action represents what needs to be executed for a selected Execution. | 601 | `execution` _[TestTriggerExecution](#testtriggerexecution)_ | Execution identifies which test execution an Action should be executed for. | 602 | `testSelector` _[TestTriggerSelector](#testtriggerselector)_ | TestSelector identifies on which Testkube Kubernetes Objects an Action should be taken. | 603 | `delay` _[Duration](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#duration-v1-meta)_ | Delay is a duration string which specifies how long the test should be delayed after a trigger is matched. | 604 605 #### Variable 606 607 _Appears in:_ 608 609 - [ExecutionRequest](#executionrequest) 610 - [TestSpec](#testspec) 611 - [TestSuiteExecutionRequest](#testsuiteexecutionrequest) 612 - [TestSuiteSpec](#testsuitespec) 613 614 | Field | Description | 615 | ----------------------------------------------------------------------------------------------------------------------- | -------------------------- | 616 | `type` _string_ | variable type | 617 | `name` _string_ | variable name | 618 | `value` _string_ | variable string value | 619 | `valueFrom` _[EnvVarSource](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#envvarsource-v1-core)_ | Load variable from var source. | 620 621 ## tests.testkube.io/v2 622 623 Package v2 contains API Schema definitions for the Testkube v2 API group. 624 625 ### Resource Types 626 627 - [Script](#script) 628 - [ScriptList](#scriptlist) 629 - [Test](#test) 630 - [TestList](#testlist) 631 - [TestSuite](#testsuite) 632 - [TestSuiteList](#testsuitelist) 633 634 #### Repository 635 636 Repository represents the VCS repo, currently we're handling Git only. 637 638 _Appears in:_ 639 640 - [TestContent](#testcontent) 641 642 | Field | Description | 643 | ------------------- | ---------------------------------------------------------------------------------------- | 644 | `type` _string_ | VCS repository type. | 645 | `uri` _string_ | URI of content file or Git directory. | 646 | `branch` _string_ | Branch/tag name for checkout. | 647 | `commit` _string_ | Commit ID (sha) for checkout. | 648 | `path` _string_ | If needed, we can checkout a particular path (dir or file) in case of BIG/mono repositories. | 649 | `username` _string_ | Git auth username for private repositories. | 650 | `token` _string_ | Git auth token for private repositories. | 651 652 #### RunningContext 653 654 Running context for test or test suite execution. 655 656 _Appears in:_ 657 658 - [TestSuiteExecutionRequest](#testsuiteexecutionrequest) 659 660 | Field | Description | 661 | -------------------------------------------------- | ------------------------------------- | 662 | `type` _[RunningContextType](#runningcontexttype)_ | One of possible context types. | 663 | `context` _string_ | Context value depending from its type. | 664 665 #### RunningContextType 666 667 _Underlying type:_ `string` 668 669 _Appears in:_ 670 671 - [RunningContext](#runningcontext) 672 673 #### Script 674 675 Script is the Schema for the scripts API. 676 677 _Appears in:_ 678 679 - [ScriptList](#scriptlist) 680 681 | Field | Description | 682 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 683 | `apiVersion` _string_ | `tests.testkube.io/v2` | 684 | `kind` _string_ | `Script` | 685 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 686 | `spec` _[ScriptSpec](#scriptspec)_ | | 687 688 #### ScriptContent 689 690 _Appears in:_ 691 692 - [ScriptSpec](#scriptspec) 693 694 | Field | Description | 695 | ---------------------------------------- | ---------------------------- | 696 | `type` _string_ | script type | 697 | `repository` _[Repository](#repository)_ | repository of script content | 698 | `data` _string_ | script content body | 699 | `uri` _string_ | URI of script content | 700 701 #### ScriptList 702 703 ScriptList contains a list of Scripts. 704 705 | Field | Description | 706 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 707 | `apiVersion` _string_ | `tests.testkube.io/v2` | 708 | `kind` _string_ | `ScriptList` | 709 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 710 | `items` _[Script](#script) array_ | | 711 712 #### ScriptSpec 713 714 ScriptSpec defines the desired state of a Script. 715 716 _Appears in:_ 717 718 - [Script](#script) 719 720 | Field | Description | 721 | ---------------------------------------------- | ----------------------------------- | 722 | `type` _string_ | script type | 723 | `name` _string_ | script execution custom name | 724 | `params` _object (keys:string, values:string)_ | execution params passed to executor | 725 | `content` _[ScriptContent](#scriptcontent)_ | script content object | 726 | `tags` _string array_ | script tags | 727 728 #### Test 729 730 Test is the Schema for the tests API. 731 732 _Appears in:_ 733 734 - [TestList](#testlist) 735 736 | Field | Description | 737 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 738 | `apiVersion` _string_ | `tests.testkube.io/v2` | 739 | `kind` _string_ | `Test` | 740 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 741 | `spec` _[TestSpec](#testspec)_ | | 742 743 #### TestContent 744 745 TestContent defines the test content. 746 747 _Appears in:_ 748 749 - [TestSpec](#testspec) 750 751 | Field | Description | 752 | ---------------------------------------- | -------------------------- | 753 | `type` _string_ | test type | 754 | `repository` _[Repository](#repository)_ | repository of test content | 755 | `data` _string_ | test content body | 756 | `uri` _string_ | uri of test content | 757 758 #### TestList 759 760 TestList contains a list of Tests. 761 762 | Field | Description | 763 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 764 | `apiVersion` _string_ | `tests.testkube.io/v2` | 765 | `kind` _string_ | `TestList` | 766 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 767 | `items` _[Test](#test) array_ | | 768 769 #### TestSpec 770 771 TestSpec defines the desired state of a Test. 772 773 _Appears in:_ 774 775 - [Test](#test) 776 777 | Field | Description | 778 | ---------------------------------------------------------------- | -------------------------------------------------------- | 779 | `type` _string_ | test type | 780 | `name` _string_ | test execution custom name | 781 | `params` _object (keys:string, values:string)_ | DEPRECATED execution params passed to executor. | 782 | `variables` _object (keys:string, values:[Variable](#variable))_ | Variables are new params with secrets attached. | 783 | `content` _[TestContent](#testcontent)_ | test content object | 784 | `schedule` _string_ | Schedule in cron job format for scheduled test execution. | 785 | `executorArgs` _string array_ | Additional executor binary arguments. | 786 787 #### TestSuite 788 789 TestSuite is the Schema for the testsuites API. 790 791 _Appears in:_ 792 793 - [TestSuiteList](#testsuitelist) 794 795 | Field | Description | 796 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 797 | `apiVersion` _string_ | `tests.testkube.io/v2` | 798 | `kind` _string_ | `TestSuite` | 799 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 800 | `spec` _[TestSuiteSpec](#testsuitespec)_ | | 801 802 #### TestSuiteExecutionCore 803 804 The test suite execution core. 805 806 _Appears in:_ 807 808 - [TestSuiteStatus](#testsuitestatus) 809 810 | Field | Description | 811 | ------------------------------------------------------------------------------------------------------- | ------------------------------- | 812 | `id` _string_ | execution ID | 813 | `startTime` _[Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#time-v1-meta)_ | test suite execution start time | 814 | `endTime` _[Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#time-v1-meta)_ | test suite execution end time | 815 816 #### TestSuiteExecutionRequest 817 818 The test suite execution request body. 819 820 _Appears in:_ 821 822 - [TestSuiteSpec](#testsuitespec) 823 824 | Field | Description | 825 | ---------------------------------------------------------------- | ----------------------------------------------------- | 826 | `name` _string_ | The test execution custom name. | 827 | `namespace` _string_ | The test Kubernetes namespace (\"testkube\" when not set). | 828 | `variables` _object (keys:string, values:[Variable](#variable))_ | | 829 | `secretUUID` _string_ | secret UUID | 830 | `labels` _object (keys:string, values:string)_ | test suite labels | 831 | `executionLabels` _object (keys:string, values:string)_ | execution labels | 832 | `sync` _boolean_ | Whether to start execution sync or async. | 833 | `httpProxy` _string_ | HTTP proxy for executor containers | 834 | `httpsProxy` _string_ | HTTPS proxy for executor containers | 835 | `timeout` _integer_ | Timeout for test suite execution. | 836 | `runningContext` _[RunningContext](#runningcontext)_ | | 837 | `cronJobTemplate` _string_ | Cron job template extensions. | 838 839 #### TestSuiteList 840 841 TestSuiteList contains a list of TestSuites. 842 843 | Field | Description | 844 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 845 | `apiVersion` _string_ | `tests.testkube.io/v2` | 846 | `kind` _string_ | `TestSuiteList` | 847 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 848 | `items` _[TestSuite](#testsuite) array_ | | 849 850 #### TestSuiteSpec 851 852 TestSuiteSpec defines the desired state of a TestSuite. 853 854 _Appears in:_ 855 856 - [TestSuite](#testsuite) 857 858 | Field | Description | 859 | ---------------------------------------------------------------------------- | --------------------------------------------------------------------- | 860 | `before` _[TestSuiteStepSpec](#testsuitestepspec) array_ | Before steps is a list of tests which will be sequentially orchestrated. | 861 | `steps` _[TestSuiteStepSpec](#testsuitestepspec) array_ | Steps is a list of tests which will be sequentially orchestrated. | 862 | `after` _[TestSuiteStepSpec](#testsuitestepspec) array_ | After steps is a list of tests which will be sequentially orchestrated. | 863 | `repeats` _integer_ | | 864 | `description` _string_ | | 865 | `schedule` _string_ | Schedule in cron job format for scheduled test execution. | 866 | `executionRequest` _[TestSuiteExecutionRequest](#testsuiteexecutionrequest)_ | | 867 868 #### TestSuiteStepDelay 869 870 TestSuiteStepDelay contains step delay parameters. 871 872 _Appears in:_ 873 874 - [TestSuiteStepSpec](#testsuitestepspec) 875 876 | Field | Description | 877 | -------------------- | -------------- | 878 | `duration` _integer_ | Duration in ms | 879 880 #### TestSuiteStepExecute 881 882 TestSuiteStepExecute defines the step to be executed. 883 884 _Appears in:_ 885 886 - [TestSuiteStepSpec](#testsuitestepspec) 887 888 | Field | Description | 889 | ------------------------- | ----------- | 890 | `namespace` _string_ | | 891 | `name` _string_ | | 892 | `stopOnFailure` _boolean_ | | 893 894 #### TestSuiteStepSpec 895 896 TestSuiteStepSpec for a particular type will have the config for possible step types. 897 898 _Appears in:_ 899 900 - [TestSuiteSpec](#testsuitespec) 901 902 | Field | Description | 903 | --------------------------------------------------------- | ----------- | 904 | `type` _[TestSuiteStepType](#testsuitesteptype)_ | | 905 | `execute` _[TestSuiteStepExecute](#testsuitestepexecute)_ | | 906 | `delay` _[TestSuiteStepDelay](#testsuitestepdelay)_ | | 907 908 #### TestSuiteStepType 909 910 _Underlying type:_ `string` 911 912 TestSuiteStepType defines different types of test suite steps. 913 914 _Appears in:_ 915 916 - [TestSuiteStepSpec](#testsuitestepspec) 917 918 #### Variable 919 920 _Appears in:_ 921 922 - [ExecutionRequest](#executionrequest) 923 - [TestSpec](#testspec) 924 - [TestSuiteExecutionRequest](#testsuiteexecutionrequest) 925 - [TestSuiteSpec](#testsuitespec) 926 927 | Field | Description | 928 | ----------------------------------------------------------------------------------------------------------------------- | -------------------------- | 929 | `type` _string_ | variable type | 930 | `name` _string_ | variable name | 931 | `value` _string_ | variable string value | 932 | `valueFrom` _[EnvVarSource](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#envvarsource-v1-core)_ | or load it from var source | 933 934 ## tests.testkube.io/v3 935 936 Package v3 contains API Schema definitions for the tests v3 API group. 937 938 ### Resource Types 939 940 - [Test](#test) 941 - [TestList](#testlist) 942 943 #### ArgsModeType 944 945 _Underlying type:_ `string` 946 947 ArgsModeType defines the args mode type. 948 949 _Appears in:_ 950 951 - [ExecutionRequest](#executionrequest) 952 953 #### ArtifactRequest 954 955 Artifact request body with test artifacts. 956 957 _Appears in:_ 958 959 - [ExecutionRequest](#executionrequest) 960 961 | Field | Description | 962 | --------------------------- | -------------------------------------------------- | 963 | `storageClassName` _string_ | The artifact storage class name for the container executor. | 964 | `volumeMountPath` _string_ | The artifact volume mount path for the container executor. | 965 | `dirs` _string array_ | The artifact directories for scraping. | 966 967 #### EnvReference 968 969 Reference to env resource. 970 971 _Appears in:_ 972 973 - [ExecutionRequest](#executionrequest) 974 975 | Field | Description | 976 | --------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | 977 | `reference` _[LocalObjectReference](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#localobjectreference-v1-core)_ | | 978 | `mount` _boolean_ | Whether we should mount a resource. | 979 | `mountPath` _string_ | Where we should mount resource. | 980 | `mapToVariables` _boolean_ | Whether we should map to variables from a resource. | 981 982 #### ExecutionCore 983 984 The test execution core. 985 986 _Appears in:_ 987 988 - [TestStatus](#teststatus) 989 990 | Field | Description | 991 | ------------------------------------------------------------------------------------------------------- | ---------------- | 992 | `id` _string_ | execution id | 993 | `number` _integer_ | execution number | 994 | `startTime` _[Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#time-v1-meta)_ | test start time | 995 | `endTime` _[Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#time-v1-meta)_ | test end time | 996 997 #### ExecutionRequest 998 999 The test execution request body. 1000 1001 _Appears in:_ 1002 1003 - [TestSpec](#testspec) 1004 1005 | Field | Description | 1006 | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | 1007 | `name` _string_ | The test execution custom name. | 1008 | `testSuiteName` _string_ | The unique test suite name (CRD Test suite name), if it's run as a part of a test suite. | 1009 | `number` _integer_ | The test execution number. | 1010 | `executionLabels` _object (keys:string, values:string)_ | The test execution labels. | 1011 | `namespace` _string_ | The test Kubernetes namespace (\"testkube\" when not set). | 1012 | `variablesFile` _string_ | Variables file content - needs to be in the format for a particular executor (e.g. postman envs file). | 1013 | `isVariablesFileUploaded` _boolean_ | | 1014 | `variables` _object (keys:string, values:[Variable](#variable))_ | | 1015 | `testSecretUUID` _string_ | test secret UUID | 1016 | `testSuiteSecretUUID` _string_ | The test suite secret uuid, if it's run as a part of a test suite. | 1017 | `args` _string array_ | Additional executor binary arguments. | 1018 | `argsMode` _[ArgsModeType](#argsmodetype)_ | Usage mode for arguments. | 1019 | `command` _string array_ | Executor binary command. | 1020 | `image` _string_ | Container executor image. | 1021 | `imagePullSecrets` _[LocalObjectReference](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#localobjectreference-v1-core) array_ | Container executor image pull secrets. | 1022 | `envs` _object (keys:string, values:string)_ | Environment variables passed to executor. Deprecated: use Basic Variables instead. | 1023 | `secretEnvs` _object (keys:string, values:string)_ | Execution variables passed to executor from secrets. Deprecated: use Secret Variables instead. | 1024 | `sync` _boolean_ | Whether to start execution sync or async. | 1025 | `httpProxy` _string_ | HTTP proxy for executor containers. | 1026 | `httpsProxy` _string_ | HTTPS proxy for executor containers. | 1027 | `negativeTest` _boolean_ | A negative test will fail the execution if it is a success and it will succeed if it is a failure. | 1028 | `activeDeadlineSeconds` _integer_ | Optional duration in seconds the pod may be active on the node relative to StartTime before the system will actively try to mark it failed and kill associated containers. Value must be a positive integer. | 1029 | `artifactRequest` _[ArtifactRequest](#artifactrequest)_ | | 1030 | `jobTemplate` _string_ | job template extensions | 1031 | `cronJobTemplate` _string_ | cron job template extensions | 1032 | `preRunScript` _string_ | The script to run before test execution. | 1033 | `scraperTemplate` _string_ | scraper template extensions | 1034 | `envConfigMaps` _[EnvReference](#envreference) array_ | config map references | 1035 | `envSecrets` _[EnvReference](#envreference) array_ | secret references | 1036 | `runningContext` _[RunningContext](#runningcontext)_ | | 1037 1038 #### GitAuthType 1039 1040 _Underlying type:_ `string` 1041 1042 GitAuthType defines the Git auth type. 1043 1044 _Appears in:_ 1045 1046 - [Repository](#repository) 1047 1048 #### Repository 1049 1050 Repository represents VCS repo, currently we're handling Git only. 1051 1052 _Appears in:_ 1053 1054 - [TestContent](#testcontent) 1055 1056 | Field | Description | 1057 | ------------------------------------------ | ---------------------------------------------------------------------------------------- | 1058 | `type` _string_ | VCS repository type | 1059 | `uri` _string_ | URI of content file or Git directory | 1060 | `branch` _string_ | branch/tag name for checkout | 1061 | `commit` _string_ | commit id (sha) for checkout | 1062 | `path` _string_ | If needed, we can checkout a particular path (dir or file) in the case of BIG/mono repositories. | 1063 | `usernameSecret` _[SecretRef](#secretref)_ | | 1064 | `tokenSecret` _[SecretRef](#secretref)_ | | 1065 | `certificateSecret` _string_ | Git auth certificate secret for private repositories | 1066 | `workingDir` _string_ | If provided, we check out the whole repository and run the test from this directory. | 1067 | `authType` _[GitAuthType](#gitauthtype)_ | auth type for git requests | 1068 1069 #### RunningContext 1070 1071 The Running context for test or test suite execution. 1072 1073 _Appears in:_ 1074 1075 - [ExecutionRequest](#executionrequest) 1076 1077 | Field | Description | 1078 | -------------------------------------------------- | ------------------------------------- | 1079 | `type` _[RunningContextType](#runningcontexttype)_ | One of possible context types | 1080 | `context` _string_ | Context value depending from its type | 1081 1082 #### RunningContextType 1083 1084 _Underlying type:_ `string` 1085 1086 _Appears in:_ 1087 1088 - [RunningContext](#runningcontext) 1089 1090 #### SecretRef 1091 1092 Testkube internal reference for secret storage in Kubernetes secrets. 1093 1094 _Appears in:_ 1095 1096 - [Repository](#repository) 1097 1098 | Field | Description | 1099 | -------------------- | --------------------------- | 1100 | `namespace` _string_ | object kubernetes namespace | 1101 | `name` _string_ | object name | 1102 | `key` _string_ | object key | 1103 1104 #### Test 1105 1106 Test is the Schema for the tests API. 1107 1108 _Appears in:_ 1109 1110 - [TestList](#testlist) 1111 1112 | Field | Description | 1113 | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------- | 1114 | `apiVersion` _string_ | `tests.testkube.io/v3` | 1115 | `kind` _string_ | `Test` | 1116 | `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 1117 | `spec` _[TestSpec](#testspec)_ | | 1118 1119 #### TestContent 1120 1121 TestContent defines test content. 1122 1123 _Appears in:_ 1124 1125 - [TestSpec](#testspec) 1126 1127 | Field | Description | 1128 | -------------------------------------------- | -------------------------- | 1129 | `type` _[TestContentType](#testcontenttype)_ | test type | 1130 | `repository` _[Repository](#repository)_ | repository of test content | 1131 | `data` _string_ | test content body | 1132 | `uri` _string_ | uri of test content | 1133 1134 #### TestContentType 1135 1136 _Underlying type:_ `string` 1137 1138 _Appears in:_ 1139 1140 - [TestContent](#testcontent) 1141 1142 #### TestList 1143 1144 TestList contains a list of the Test. 1145 1146 | Field | Description | 1147 | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | 1148 | `apiVersion` _string_ | `tests.testkube.io/v3` | 1149 | `kind` _string_ | `TestList` | 1150 | `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | 1151 | `items` _[Test](#test) array_ | | 1152 1153 #### TestSpec 1154 1155 TestSpec defines the the desired state of a Test. 1156 1157 _Appears in:_ 1158 1159 - [Test](#test) 1160 1161 | Field | Description | 1162 | ---------------------------------------------------------- | -------------------------------------------------------- | 1163 | `type` _string_ | test type | 1164 | `name` _string_ | test name | 1165 | `content` _[TestContent](#testcontent)_ | test content object | 1166 | `source` _string_ | reference to test source resource | 1167 | `schedule` _string_ | schedule in cron job format for scheduled test execution | 1168 | `executionRequest` _[ExecutionRequest](#executionrequest)_ | | 1169 | `uploads` _string array_ | files to be used from minio uploads | 1170 1171 #### Variable 1172 1173 _Appears in:_ 1174 1175 - [ExecutionRequest](#executionrequest) 1176 - [TestSpec](#testspec) 1177 - [TestSuiteExecutionRequest](#testsuiteexecutionrequest) 1178 - [TestSuiteSpec](#testsuitespec) 1179 1180 | Field | Description | 1181 | ----------------------------------------------------------------------------------------------------------------------- | -------------------------- | 1182 | `type` _string_ | variable type | 1183 | `name` _string_ | variable name | 1184 | `value` _string_ | variable string value | 1185 | `valueFrom` _[EnvVarSource](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#envvarsource-v1-core)_ | or load it from var source |