tools/README.md
Utility scripts for GitHub automation and release management.
This directory contains Node.js/TypeScript tools for automating release workflows and generating standardized release notes for both runtime and client releases.
tools/
├── github/ # GitHub automation utilities
│ ├── github-utils.ts # Common GitHub API utilities
│ ├── generate-release-body.ts # Client release notes generator
│ └── generate-runtime-body.ts # Runtime release notes generator
├── package.json # Dependencies and scripts
└── tsconfig.json # TypeScript configuration
.nvmrc)cd tools
npm install
Creates formatted release notes for client (node binary) releases:
npm run print-client-release-issue
This script:
Creates formatted release notes for runtime (WASM) releases:
npm run print-runtime-release-issue
This script:
These tools are typically invoked by GitHub Actions workflows during the release process. They can also be run manually for testing or preparing draft releases.
The tools use the Octokit library to interact with the GitHub API. Authentication is typically handled via GITHUB_TOKEN environment variable in CI/CD contexts.
The tools are written in TypeScript and use:
@polkadot/api: For parsing runtime metadataoctokit: For GitHub API interactionsyargs: For CLI argument parsingts-node: For direct TypeScript executionTo modify release note formatting or add new automation:
github/package.json scripts if adding new commandsnpm run <script-name>.github/workflows/ if needed