Getting Started with ethPM CLI
There are multiple options that allow you to start interacting with the ethPM ecosystem, but the easiest place to start is the ethPM CLI. Full API documentation of these commands can be found here.
Setup
Installing ethPM CLI
Homebrew (recommended)
brew update
brew upgrade
brew tap ethpm/ethpm-cli
brew install ethpm-cli
pypi
Create your virtual environment
Install the latest version from pypi with
pip install ethpm-cli==x.x.x
Docker
docker pull ethpm/ethpm:latest
docker run ethpm/ethpm:latest
Setting up your environment vars
Before you can use ethPM CLI, you must provide an API key to interact with Infura. If you don't have an API key, you can sign up for one here. Then set your environment variable with
If you plan to generate packages from Etherscan verified contracts, you must also provide an API key for Etherscan.
If you're using Docker to run ethPM CLI, you must pass Docker the environment variables and mount volumes, like so...
Setting up your private key
If you plan to use the CLI to send any transactions over an Ethereum network (eg. deploying a new registry, releasing a package to a registry), you must link a encrypted keyfile to sign these transactions. ethPM CLI uses eth-keyfile to handle private keys. Follow the steps in the README to generate your encrypted keyfile. Make sure you don't lose the password, as you'll need to provide it for any tx-signing commands. Once you have your encrypted keyfile, you can link it to the ethPM CLI with the following command.
Commands
Deploying a Registry
This will deploy a new instance of the ERC1319 Solidity Registry to the specified chain. The address signing the transaction will automatically be set as the owner
address on the registry. The newly deployed registry will be set as the active registry. You can provide an alias, if you want to store a simple reference to the registry.
Generating an ethPM manifest
Thorough steps on how to generate a manifest for a local project can be found here.
To start a manifest wizard CLI prompt that will guide you through provided options allowed by the ethPM Specification.
To quickly generate a bare-bones manifest in one step, without any additional fields.
Releasing a package
This will release a package version on the active registry.
Installing a package
This will install a package and its assets to a local _ethpm_packages/
directory. You can provide a specific ethPM directory, otherwise the CLI will default to the ethPM directory under the current working directory. You can provide an alias for the package if you want a simple reference to the package.
Last updated