Skip to content
Testaroo
yaml1.6 KB

Kubernetes Multi-Document Manifest Bundle

Three Kubernetes objects in one YAML stream, the shape kubectl apply consumes. A loader that calls the single-document API returns only the first object and silently drops the other two, which is exactly the failure this fixture is for.

Preview, first 50 linesyaml
# A three-document YAML stream: the shape `kubectl apply -f` reads and most naive parsers do not.
# A loader that calls the single-document API returns only the ConfigMap and silently drops two
# objects; the multi-document API returns all three in order.
apiVersion: v1
kind: ConfigMap
metadata:
  name: orders-config
  namespace: example-apps
  labels:
    app.kubernetes.io/name: orders
data:
  LOG_LEVEL: info
  FEATURE_FLAGS: |
    checkout_v2=true
    slow_path=false
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: orders
  namespace: example-apps
  labels:
    app.kubernetes.io/name: orders
    app.kubernetes.io/version: 1.4.0
spec:
  replicas: 3
  selector:
    matchLabels:
      app.kubernetes.io/name: orders
  template:
    metadata:
      labels:
        app.kubernetes.io/name: orders
    spec:
      containers:
        - name: orders
          image: registry.example.invalid/example-org/orders:1.4.0
          ports:
            - containerPort: 8080
              name: http
          envFrom:
            - configMapRef:
                name: orders-config
          resources:
            requests:
              cpu: 100m
              memory: 128Mi
            limits:
              cpu: 500m
              memory: 512Mi
… 70 lines total: download for the full file.

Specifications

Documents
3
Kinds
ConfigMap, Deployment, Service
Namespace
example-apps
Edge Case
single-document loaders silently drop two objects
Has Block Scalar
true

Testing contract

Expected to pass
Scenario
Load a multi-document Kubernetes manifest with a single-document YAML API
Expected result
The multi-document API yields 3 objects in stream order; the single-document API yields only the ConfigMap or raises a composer error

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

“Kubernetes Multi-Document Manifest Bundle” 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 · 1,612 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("multi-document-bundle.yaml") as f:
    data = yaml.safe_load(f)
print(data)

Generated by generation/pipelines.py. Free for any use, no attribution required, license.