Some checks are pending
Docs Deploy / build_and_deploy (push) Waiting to run
Generate Docs / cli (push) Waiting to run
Generate Config Doc / cli (push) Waiting to run
Go formatting / go-formatting (push) Waiting to run
Check links / markdown-link-check (push) Waiting to run
Integration / pre-test (push) Waiting to run
Integration / test on (push) Blocked by required conditions
Integration / status (push) Blocked by required conditions
Lint / Lint Go code (push) Waiting to run
Test / test (ubuntu-latest) (push) Waiting to run
74 lines
3 KiB
Markdown
74 lines
3 KiB
Markdown
---
|
|
sidebar_position: 0
|
|
---
|
|
|
|
# Migration Guides
|
|
|
|
Welcome to the section on upgrading to a newer version of IGNITE® CLI! If you're
|
|
looking to update to the latest version, you'll want to start by checking the
|
|
documentation to see if there are any special considerations or instructions you
|
|
need to follow.
|
|
|
|
If there is no documentation for the latest version of IGNITE® CLI, it's
|
|
generally safe to assume that there were no breaking changes, and you can
|
|
proceed with using the latest version with your project.
|
|
|
|
## Create your own Migration Guide
|
|
|
|
The `gen-mig-diffs` tool helps developers manage and visualize code changes across multiple major versions of IGNITE®. With each major upgrade, the codebase might undergo significant changes, making it challenging for developers to track these differences after several updates. The `gen-mig-diffs` tool simplifies this process by scaffolding blockchains with both the old and new versions and displaying the differences.
|
|
|
|
It is located in the [IGNITE® CLI GitHub repository](https://github.com/ignite/cli/tree/main/ignite/internal/tools/gen-mig-diffs)
|
|
directory and has been made into a standalone project.
|
|
|
|
To set up this tool in your development environment:
|
|
|
|
```shell
|
|
gen-mig-diffs [flags]
|
|
```
|
|
|
|
This tool generates migration diff files for each of IGNITE®'s scaffold commands. It compares two specified versions of IGNITE® and provides a clear, organized view of the changes.
|
|
|
|
## How to Get Started
|
|
|
|
1. Clone the IGNITE® CLI repository:
|
|
|
|
```shell
|
|
git clone https://github.com/ignite/cli.git --depth=1 && \
|
|
cd cli/ignite/internal/tools/gen-mig-diffs
|
|
```
|
|
|
|
2. Install and show usage:
|
|
|
|
```shell
|
|
go install . && gen-mig-diffs -h
|
|
```
|
|
|
|
### Example Migration
|
|
|
|
As an example, to generate migration diffs between versions 0.27.2 and 28.3.0, use the following command:
|
|
|
|
```shell
|
|
gen-mig-diffs --output temp/migration --from v0.27.2 --to v28.3.0
|
|
```
|
|
|
|
This command scaffolds blockchains with the specified versions and shows the differences, making it easier for developers to understand and apply necessary changes when upgrading their projects.
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
This tool is used to generate migration diff files for each of ignites scaffold commands
|
|
|
|
Usage:
|
|
gen-mig-diffs [flags]
|
|
|
|
Flags:
|
|
-f, --from string Version of IGNITE® or path to IGNITE® source code to generate the diff from
|
|
-h, --help help for gen-mig-diffs
|
|
-o, --output string Output directory to save the migration document (default "docs/docs/06-migration")
|
|
--repo-output string Output path to clone the IGNITE® repository
|
|
-s, --repo-source string Path to IGNITE® source code repository. Set the source automatically set the cleanup to false
|
|
--repo-url string Git URL for the IGNITE® repository (default "https://github.com/ignite/cli.git")
|
|
--scaffold-cache string Path to cache directory
|
|
--scaffold-output string Output path to clone the IGNITE® repository
|
|
-t, --to string Version of IGNITE® or path to IGNITE® source code to generate the diff to
|
|
```
|