The Lotus Release Tool is a CLI (Command Line Interface) utility designed to facilitate interactions with the Lotus Node and Miner metadata. This tool allows users to retrieve version information in either JSON or text format. The Lotus Release Tool was initially developed as a part of the 2024Q2 release process automation initiative and is used in the GitHub Actions workflows related to the release process.
- List all projects with their expected version information.
- Create a new release issue from a template.
- Output logs in JSON or text format.
To install the Lotus Release Tool, you need to have Go installed on your system.
- Build the tool:
go build -o release ./cmd/release
The release tool provides several commands and options to interact with the Lotus Node and Miner.
- List Projects: List all projects with their version information.
./release list-projects
- Create Issue: Create a new release issue from a template.
./release create-issue
- --json: Format output as JSON.
./release --json
List Lotus Node and Lotus Miner version information with JSON formatted output:
./release --json list-projectsCreate a new release issue from a template:
./release create-issue --type node --tag 1.30.1 --level patch --network-upgrade --discussion-link https://github.com/filecoin-project/lotus/discussions/12010 --changelog-link https://github.com/filecoin-project/lotus/blob/v1.30.1/CHANGELOG.md --rc1-date 2023-04-01 --rc1-precision day --rc1-confidence confirmed --stable-date 2023-05-01 --stable-precision week --stable-confidence estimated