production-release

Automates production releases by updating changelogs, bumping Helm chart versions, and pushing git tags.

4.6k|387|Updated Jun 28, 2024
One-click install
npx skills add https://github.com/latitude-dev/latitude-llm --skill production-release
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: production-release
Source: https://github.com/latitude-dev/latitude-llm/tree/main/.agents/skills/production-release
Command: npx skills add https://github.com/latitude-dev/latitude-llm --skill production-release

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Preparing a production release involves error-prone manual steps: writing changelog entries, syncing Helm chart versions, committing with the exact release message format, and pushing the correct vX.Y.Z tag. This Skill codifies the entire release workflow with strict invariants so deployments to production are consistent and safe.

Core Features & Use Cases

  • Changelog Generation: Inspects the commit range since the last production tag and writes a human-readable CHANGELOG.md section summarizing the major shipped changes.
  • Helm Chart Version Sync: Sets both version and appVersion in charts/latitude/Chart.yaml to match the release, which scripts/release.sh validates before tagging.
  • Tag-Based Deployment: Runs scripts/release.sh to tag the latest origin/development commit with the next vX.Y.Z version, triggering the production deploy.
  • Use Case: An engineer says "do a production release" and the agent determines the next patch version, updates the changelog and chart, commits as release: vX.Y.Z, pushes to development, and tags the release non-interactively with --yes.

Quick Start

Run a production release for the next patch version, updating the changelog and Helm chart before pushing the release tag.

Frequently Asked Questions about production-release

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I trigger a production deployment with git tags?

Push a vX.Y.Z tag pointing at the latest origin/development commit using scripts/release.sh. The deployment pipeline triggers on the tag push, so the release commit including the changelog update must be pushed to origin/development first.

How do I write a changelog for a production release?

Identify the previous vX.Y.Z tag, inspect the commit range up to origin/development, and add a dated version section to CHANGELOG.md under Unreleased. Summarize major shipped behavior in past tense, grouping related commits and skipping internal-only noise.

Why does scripts/release.sh fail without the --yes flag?

The script shows an interactive confirmation prompt before tagging, which cannot be answered in non-terminal environments like agents or CI. Without --yes it exits with an error instead of tagging, so always pass --yes when running non-interactively.

Why must the Helm chart version match the release tag?

The chart in charts/latitude/Chart.yaml tracks the Latitude release, and scripts/release.sh refuses to tag when the chart version does not match. Set both version and appVersion to X.Y.Z without the leading v in the same release commit.

Can I promote development to production by merging into main?

No, production is triggered only by pushing a vX.Y.Z tag on the latest origin/development commit. Merging development into main is explicitly not the promotion path, and tagging local-only unpushed commits is forbidden.