Tekton Task with Params, Workspaces, and Results
A Tekton Task declaring string and array params, a workspace, a result, and two steps that use Tekton's $(params.x) and $(workspaces.x.path) variable syntax, including the $(params.flags[*]) array expansion form.
apiVersion: tekton.dev/v1
kind: Task
metadata:
name: build-artifact
namespace: example-apps
spec:
description: Inert fixture. Describes a task; nothing here runs.
params:
- name: target
type: string
default: all
- name: flags
type: array
default: []
workspaces:
- name: source
description: Checked-out source tree
results:
- name: artifact-digest
description: Digest of the produced artifact
type: string
steps:
- name: compile
image: registry.example.invalid/ci/build:3.1
workingDir: $(workspaces.source.path)
script: |
echo "target=$(params.target)"
args: ["$(params.flags[*])"]
- name: record
image: registry.example.invalid/ci/build:3.1
script: |
printf 'sha256:0000' > $(results.artifact-digest.path)
Specifications
- System
- Tekton
- Kind
- Task
- Api Version
- tekton.dev/v1
- Params
- 2
- Array Param
- true
- Workspaces
- 1
- Results
- 1
- Steps
- 2
- Variable Syntax
- $(params.x)
Testing contract
Expected to pass- Scenario
- Resolve Tekton's $() variable syntax, including the [*] array-expansion form
- Expected result
- Every $() reference binds to a declared param, workspace, or result, and $(params.flags[*]) is recognised as an array expansion rather than a string
What is a .yaml file?
YAML (YAML Ain't Markup Language) is a human-readable data-serialization format using indentation, key-value pairs, and lists, and is a superset of JSON. It supports comments, anchors, and multiple documents per file, favoring readability for configuration. Its indentation sensitivity makes it error-prone to hand-edit.
How to use this file
Use an example YAML file to test config parsers, indentation and anchor handling, multi-document streams, and safe-loading to avoid arbitrary object construction.
How to use this file for testing
“Tekton Task with Params, Workspaces, and Results” is a deterministic Testaroo fixture for Config testing, Config parsing, Editor testing. TOML, INI, YAML, .env, and dotfile configuration samples with nested sections and typed values, for testing config parsers, loaders, and environment tooling.
Documented properties for this file: YAML · 838 bytes. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such, expect parsers to fail loudly rather than silently accept them.
Pipeline and infrastructure fixtures are inert configuration: steps reference fictional images and scripts, and nothing here executes. Run your linter, schema validator, migrator, or policy engine against them, and expect the deprecated-syntax and intentionally invalid variants to be rejected.
Point your config loader at the file and assert it reads the documented sections and typed values, including any deliberately-tricky nesting or comments.
Code examples
import yaml # pip install pyyaml
with open("tekton-task.yaml") as f:
data = yaml.safe_load(f)
print(data)Generated by generation/pipelines.py. Free for any use, no attribution required, license.
Related files
- yamlArgo CD Application with Sync PolicyAn Argo CD Application with automated sync, prune and self-heal, retry backoff, sync options, and an ignoreDifferences rule that exempts replica counts from drift detection. All Git and cluster endpoints are example.invalid.

- yamlArgo CronWorkflow ScheduleAn Argo CronWorkflow wrapping an inline workflowSpec: a cron schedule with an explicit timezone, Replace concurrency, history limits, and a suspend flag. Nested-spec shape that flat schedule extractors miss.

- yamlTekton Pipeline with when and finallyA Tekton Pipeline chaining three tasks with runAfter, a when expression that consumes a prior task's result, and a finally task that runs regardless of outcome. The finally block is a common omission in Tekton graph extractors.

- yamlTekton PipelineRun (Run Request)A Tekton PipelineRun as a run request: a pipelineRef, params, timeouts and a workspace binding, with no status block. A completed run's status is a record of what happened and belongs with test-report fixtures, not with pipeline definitions.

- ymlAzure Pipelines Matrix StrategyAzure's named-leg matrix form, where each leg is a mapping of variables rather than an axis product: three Python legs, a maxParallel cap, a job timeout, and a JUnit results publish step that runs on failure too.

- ymlAzure Pipelines Stages and Deployment JobA three-stage Azure Pipelines definition with a build-number format expression, a variable group reference, stage conditions built from the expression functions, and a deployment job using the runOnce strategy against a named environment.
