Skip to content

Tag: devops

All the articles with the tag "devops".

promptfoo: Unit Tests for Your Prompts

promptfoo: Unit Tests for Your Prompts

Write a YAML test suite for your LLM prompts with promptfoo, run it against a local model, and fail the CI build when a prompt tweak quietly breaks the output.

yq: Editing YAML From the Command Line

yq: Editing YAML From the Command Line

Install the Go yq, not the Python one. Bump compose tags, patch Kubernetes manifests, merge configs and edit front matter from the shell, plus the gotchas.

K8s Requests vs Limits in a Home Lab

K8s Requests vs Limits in a Home Lab

What Kubernetes requests and limits actually do on a small k3s cluster: QoS classes, OOMKills, CPU throttling, node reservations, and the settings I'd pick.

Container Restart Storms at 2 AM

Container Restart Storms at 2 AM

A triage runbook for a Docker or Kubernetes container stuck in a restart loop: read the signals, stop the loop, get a shell, and find the real cause fast.

k3s Node Upgrades Without Downtime

k3s Node Upgrades Without Downtime

Upgrade k3s without dropping workloads: the cordon and drain sequence, then system-upgrade-controller Plans that automate it, with PDB and Longhorn gotchas.

Kyverno: K8s Policy Without Rego

Kyverno: K8s Policy Without Rego

Kyverno on k3s: validate, mutate, generate, verify signed images, handle exceptions, and test policies in CI. Plus the CEL policy types replacing ClusterPolicy.

Docker Build Cache in CI: Make It Hit

Docker Build Cache in CI: Make It Hit

Docker layer cache works on your laptop but CI starts cold. Fix it with registry cache or type=gha, set scope and mode=max, and debug why hits still miss.

Pre-Commit Hooks That Catch Secrets

Pre-Commit Hooks That Catch Secrets

A secret that reaches git push is already gone. Compare gitleaks, TruffleHog, and detect-secrets as pre-commit hooks, with working configs you can copy.

Devcontainers for a Whole Team

Devcontainers for a Whole Team

Turn a devcontainer into a team standard: Compose with Postgres, pinned Features, lifecycle hooks, one prebuilt image for laptops and CI, and the UID gotcha.

Stop Handing CI Jobs Root on Your Box

Stop Handing CI Jobs Root on Your Box

Self-hosted GitHub Actions, Forgejo, and GitLab runners can hand a forked pull request root on your box. Here is the isolation ladder that actually stops it.