@eth-optimism/ovm-truffle-provider-wrapper

0.0.1-alpha.27 • Public • Published

OVM Truffle Provider Wrapper

The OVM uses a specific chainId, which Truffle, at the moment, does not allow to be configured globally within a project, so this package simply wraps the provider that is used in order to set the chainId field on all transactions.

Configuration

ChainId defaults to 108 but is configurable by setting the OVM_CHAIN_ID environment variable. Note: you will also need to include @eth-optimism/rollup-full-node as a dependency if you would like to run a full node locally (or use ProviderWrapper.wrapProviderAndStartLocalNode(...)).

Example Usage in truffle-config.js:

const HDWalletProvider = require('truffle-hdwallet-provider');
const ProviderWrapper = require("@eth-optimism/ovm-truffle-provider-wrapper");
const mnemonic = 'candy maple cake sugar pudding cream honey rich smooth crumble sweet treat';

module.exports = {
  networks: {
    test: {
      provider: function () {
        return ProviderWrapper.wrapProviderAndStartLocalNode(new HDWalletProvider(mnemonic, "http://127.0.0.1:8545/", 0, 10));
      },
    },
    live_example: {
      provider: function () {
        return ProviderWrapper.wrapProvider(new HDWalletProvider(mnemonic, "http://127.0.0.1:8545/", 0, 10));
      },
    },
  },
  compilers: {
    solc: {
      // Add path to the solc-transpiler
      version: "../../node_modules/@eth-optimism/solc-transpiler",
    }
  }
}

Package Sidebar

Install

npm i @eth-optimism/ovm-truffle-provider-wrapper

Weekly Downloads

0

Version

0.0.1-alpha.27

License

MIT

Unpacked Size

4.17 kB

Total Files

3

Last publish

Collaborators

  • optibot
  • kelvinfichter