Harmony에 contract를 deploy 하기 위해서는 먼저 계정이 필요하다.
계정은 아래 링크를 참고해서 만들자. chrome extension을 깔아야 한다. 계정을 만든 후에는 faucet도 진행해주자.
https://medium.com/harmony-one/how-to-stake-one-on-harmony-test-net-1f72c4fa802e
truffle을 이용해서 deploy하는 방법은 Ethereum에서 deploy를 하는 방법과 동일하다.
https://docs.harmony.one/home/developers/deploying-on-harmony/using-truffle
mnemonic이나 privateKey를 이용해서 계정을 연결할 수 있다.
require('dotenv').config()
const HDWalletProvider = require('@truffle/hdwallet-provider');
const privateKeyTest = process.env.TESTNET_PRIVATE_KEY;
module.exports = {
networks: {
testnet: {
provider: () => {
if (!privateKeyTest.trim()) {
throw new Error(
'Please enter a private key with funds, you can use the default one'
);
}
return new HDWalletProvider({
privateKeys: [privateKeyTest],
providerOrUrl: 'https://api.s0.b.hmny.io',
});
},
network_id: 1666700000,
},
},
// Set default mocha options here, use special reporters etc.
mocha: {
// timeout: 100000
},
// Configure your compilers
compilers: {
solc: {
version: "0.8.11", // Fetch exact version from solc-bin (default: truffle's version)
optimizer: {
enabled: true,
runs: 200
}
}
},
};
deploy가 성공하면 contract address를 explore에 입력해서 자세한 정보를 확인할 수 있다.