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
43 lines
1.3 KiB
Markdown
43 lines
1.3 KiB
Markdown
---
|
|
description: Using and Developing plugins
|
|
---
|
|
|
|
# Using Plugins
|
|
|
|
Ignite plugins offer a way to extend the functionality of the Ignite CLI. There
|
|
are two core concepts within plugins : `Commands` and `Hooks`. Where `Commands`
|
|
extend the cli's functionality, and `Hooks` extend existing command
|
|
functionality.
|
|
|
|
Plugins are registered in an Ignite scaffolded Blockchain project through the
|
|
`plugins.yml`, or globally through `$HOME/.ignite/plugins/plugins.yml`.
|
|
|
|
To use a plugin within your project, execute the following command inside the
|
|
project directory:
|
|
|
|
```sh
|
|
ignite plugin add github.com/project/cli-plugin
|
|
```
|
|
|
|
The plugin will be available only when running `ignite` inside the project
|
|
directory.
|
|
|
|
To use a plugin globally on the other hand, execute the following command:
|
|
|
|
```sh
|
|
ignite plugin add -g github.com/project/cli-plugin
|
|
```
|
|
|
|
The command will compile the plugin and make it immediately available to the
|
|
`ignite` command lists.
|
|
|
|
## Listing installed plugins
|
|
|
|
When in an ignite scaffolded blockchain you can use the command `ignite plugin
|
|
list` to list all plugins and there statuses.
|
|
|
|
## Updating plugins
|
|
|
|
When a plugin in a remote repository releases updates, running `ignite plugin
|
|
update <path/to/plugin>` will update a specific plugin declared in your
|
|
project's `config.yml`.
|