Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jigtree-release-notes

Shared release notes tool for Aurea products (Monitor, Messenger, Pivotal CRM).

Overview

A single CLI tool that:

  1. Takes a checked-out repo + two git refs (tags, SHAs, branches)
  2. Walks submodules to find what changed
  3. Gathers PRs, issues, commits per changed repo
  4. Correlates to support tickets (Kayako/Zendesk)
  5. Outputs structured YAML
  6. Fills a Google Docs template
  7. Optionally exports PDF

Product differences are handled by configuration, not code.

Architecture

repo + two refs → gather-changes.py → changes.yaml
                                          ↓
                  md-to-yaml.py (Bedrock) → release-notes-data.yaml
                                          ↓
                  gdrive-fill-template.py → Google Doc [DRAFT]
                                          ↓
                  gdrive-export-pdf.py → PDF
                                          ↓
                  publish.gs (Apps Script) → removes DRAFT, saves PDF

Scripts

Script Description
bin/gather-changes.py Git diff + PR/issue/ticket collection
bin/md-to-yaml.py MD → structured YAML via Bedrock
bin/gdrive-fill-template.py YAML → Google Doc (generic, YAML-driven)
bin/gdrive-export-pdf.py Google Doc → PDF export
bin/md-to-pdf.sh MD → PDF via Pandoc + WeasyPrint (local preview)

Setup

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Environment Variables

For Google Drive scripts:

  • GOOGLE_CLIENT_ID
  • GOOGLE_CLIENT_SECRET
  • GOOGLE_REFRESH_TOKEN

For md-to-yaml.py (Bedrock):

  • AWS credentials (via AWS_PROFILE, env vars, or instance role)

Usage

# 1. Gather changes between two refs
bin/gather-changes.py /path/to/repo v6.6.5.10 v6.7.0.0 --config configs/pivotal.yaml

# 2. Convert markdown release notes to YAML
bin/md-to-yaml.py release-notes.md release-notes-data.yaml --version 6.7.0.0 --release-name "6.7.0.0"

# 3. Fill Google Docs template
bin/gdrive-fill-template.py release-notes-data.yaml --draft

# 4. Export PDF
bin/gdrive-export-pdf.py <doc-id> release-notes.pdf

# 5. Local preview (no Google account needed)
bin/md-to-pdf.sh release-notes.md release-notes.pdf --product-name "Pivotal CRM" --version "6.7.0.0"

Product Configs

Each product has a YAML config in configs/:

  • configs/monitor.yaml
  • configs/messenger.yaml
  • configs/pivotal.yaml

References

About

Shared release notes generation tool for Aurea products

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages