Brownie ile testnet'e dağıtın

Dec 12 2020

Brownie ile kovan test ağına bazı kodlar dağıtmak istiyorum. Ancak, hesaplara erişirken hata almaya devam ediyorum. İşte çalıştırdığım komut:

brownie run scripts/deploy_price_consumer_v3.py --network kovan

İşte hata:

Running 'scripts/deploy_price_consumer_v3.py::main'...
  File "brownie/_cli/run.py", line 49, in main
    return_value = run(args["<filename>"], method_name=args["<function>"] or "main")
  File "brownie/project/scripts.py", line 66, in run
    return getattr(module, method_name)(*args, **kwargs)
  File "./scripts/deploy_price_consumer_v3.py", line 7, in main
    print(accounts[0])
  File "brownie/network/account.py", line 103, in __getitem__
    return self._accounts[key]

Ama brownie accounts listkoştuğumda bir hesap alıyorum.

brownie accounts list
Brownie v1.11.12 - Python development framework for Ethereum

Found 1 account:
 └─0: 0x643315C9Be056cDEA171F4e7b2222a4ddaB9F88D
patrick@iMac: [~/code/chainlink-mix] $ 

Ek bilgi

Ayrıca yapılandırmayı değiştirmeyi denedim:

networks:
  default: kovan
  kovan:
    cmd_settings:
      mnemonic: ${MNEMONIC}
    host: ${KOVAN_RPC_URL}

Bazı ortam değişkenleriyle

Ben de bu benzer sorudaki talimatları izledim , ancak yine de sorunlarla karşılaştım.

Yanıtlar

1 Macarse Dec 14 2020 at 00:11

Koşu sonrası:

brownie accounts new <id>

Hesaba benzersiz bir kimlik vererek, özel anahtarı girmeniz gerekecek. Ardından dağıtım komut dosyanızda hesabı yüklemeniz ve hesabın parolasını girmeniz gerekir. Dolayısıyla PriceFeed.sol, adlandırılmış bir sözleşmeniz varsa ve 0dağıtım betiğinizin hesap kimliğini verdiyseniz aşağıdaki gibi görünecektir:

from brownie import PriceFeed, accounts


def main():
    dev = accounts.load('0')
    return PriceFeed.deploy({'from': dev})

İşte yearn.finance'dan bir örnek Örnek: https://github.com/iearn-finance/yearn-vaults/pull/125