ControlPlaneRef names the CoderControlPlane in the same namespace. The controller calls Coder with that control plane's operator token.
template
string
Template is the Coder template as <organization>.<template>, the same format as aggregated CoderTemplate names. Each name has at most 32 characters and is not one of Coder's reserved names new or create.
Parameters are rich parameter values for the start build.
timeoutSeconds
integer
TimeoutSeconds bounds the whole run: waiting for inputs, the start build, agent readiness, and the delete build. Cleanup continues after the deadline.
ttlSecondsAfterFinished
integer
TTLSecondsAfterFinished deletes the test this long after it finished and its workspace is gone, like Job. Do not set it under GitOps: the GitOps tool recreates the deleted object, which runs the test again.
CreateAttemptTime is set before every workspace create request. While it is set and WorkspaceID is empty, a create request can be in flight or already committed in Coder.
workspaceID
string
WorkspaceID is the Coder workspace ID.
startBuildID
string
StartBuildID is the ID of the start build that the controller requested.
deleteBuildID
string
DeleteBuildID is the ID of the current delete build.
CoderTemplateTestVersion selects the template version under test. Set
exactly one field.
+kubebuilder:validation:XValidation:rule="(has(self.name) ? 1 : 0) + (has(self.id) ? 1 : 0) + (has(self.active) ? 1 : 0) == 1",message="set exactly one of name, id, or active"
+kubebuilder:validation:XValidation:rule="!has(self.active) || self.active",message="active must be true when set"
Field
Type
Description
name
string
Name is the name of a version of the template. It follows Coder's template version name rules.
id
string
ID is the UUID of a version of the template.
active
boolean
Active selects the template's active version when the test starts. The controller resolves it once and records the version, so a later promotion does not change the version under test.