Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign in
Socket

cosmossdk.io/tools/confix

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cosmossdk.io/tools/confix

Go
Version
v0.1.2
Version published
Created
Source

sidebar_position: 1

Confix

Confix is a configuration management tool that allows you to manage your configuration via CLI.

It is based on the CometBFT RFC 019.

Installation

Add Config Command

To add the confix tool, it's required to add the ConfigCommand to your application's root command file (e.g. <appd>/cmd/root.go).

Import the confixCmd package:

import "cosmossdk.io/tools/confix/cmd"

Find the following line:

initRootCmd(rootCmd, encodingConfig)

After that line, add the following:

rootCmd.AddCommand(
    confixcmd.ConfigCommand(),
)

The ConfixCommand function builds the config root command and is defined in the confixCmd package (cosmossdk.io/tools/confix/cmd). An implementation example can be found in simapp.

The command will be available as simd config.

Using Confix Standalone

To use Confix standalone, without having to add it in your application, install it with the following command:

go install cosmossdk.io/tools/confix/cmd/confix@latest

Alternatively, for building from source, simply run make confix. The binary will be located in tools/confix.

Usage

Use standalone:

confix --help

Use in simd:

simd config fix --help

Get

Get a configuration value, e.g.:

simd config get app pruning # gets the value pruning from app.toml
simd config get client chain-id # gets the value chain-id from client.toml
confix get ~/.simapp/config/app.toml pruning # gets the value pruning from app.toml
confix get ~/.simapp/config/client.toml chain-id # gets the value chain-id from client.toml

Set

Set a configuration value, e.g.:

simd config set app pruning "enabled" # sets the value pruning from app.toml
simd config set client chain-id "foo-1" # sets the value chain-id from client.toml
confix set ~/.simapp/config/app.toml pruning "enabled" # sets the value pruning from app.toml
confix set ~/.simapp/config/client.toml chain-id "foo-1" # sets the value chain-id from client.toml

Migrate

Migrate a configuration file to a new version, e.g.:

simd config migrate v0.47 # migrates defaultHome/config/app.toml to the latest v0.47 config
confix migrate v0.47 ~/.simapp/config/app.toml # migrate ~/.simapp/config/app.toml to the latest v0.47 config

Diff

Get the diff between a given configuration file and the default configuration file, e.g.:

simd config diff v0.47 # gets the diff between defaultHome/config/app.toml and the latest v0.47 config
confix diff v0.47 ~/.simapp/config/app.toml # gets the diff between ~/.simapp/config/app.toml and the latest v0.47 config

View

View a configuration file, e.g:

simd config view client # views the current app client config
confix view ~/.simapp/config/client.toml # views the current app client conf

Maintainer

At each SDK modification of the default configuration, add the default SDK config under data/v0.XX-app.toml. This allows users to use the tool standalone.

Credits

This project is based on the CometBFT RFC 019 and their own implementation of confix.

FAQs

Package last updated on 13 Aug 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts