Трюфель / Ганаш: есть ли способ установить адрес развертывания?

В настоящее время я разрабатываю децентрализованное приложение на Solidity и хочу часто тестировать его локально вместе с обновлениями, поэтому я действительно не хочу каждый раз повторно развертывать его в тестовой сети. Однако каждый раз, когда я его развертываю, адрес смарт-контракта развертывается для изменений, поэтому я должен обновить свой интерфейсный код на новый адрес.

Есть ли способ «заставить» смарт-контракт всегда развертываться по одному и тому же адресу? Или есть какое-нибудь другое эквивалентное решение, о котором вы могли бы подумать?

Спасибо!


person Thanh-Quy Nguyen    schedule 24.03.2019    source источник
comment
К вашему сведению, blog.zeppelinos.org/proxy-patterns   -  person Zulhilmi Zainudin    schedule 24.03.2019
comment
Это интересно, но в моем случае это не особо помогает ... Разве я что-то упустил?   -  person Thanh-Quy Nguyen    schedule 24.03.2019


Ответы (2)


Столкнулся с такой же проблемой. Я не знаю, законно ли это, но вы можете:

в вашем файле миграции (migrations / 1_example_migration.js)

var MyContract = artifacts.require("MyContract");

module.exports = function(deployer) {
    console.log(deployer);
    console.log(arguments);
    let n = 5; // it can be any address from list of available
    deployer.deploy(MyContract, {from: arguments[2][n]});
};

Документация

person Purusah    schedule 06.07.2019

вы можете получить список своих учетных записей, передав аргумент учетных записей, например следует В deploy_migration файлах:

module.exports = function(deployer, network, accounts) {
  // Use the accounts within your migrations.
}
person Kaki Master Of Time    schedule 29.04.2021