Deploy your smart contract
After testing your contract carefully. You might want to deploy it to the U2U network. This section will guide you to deploy your smart contract.
In Hardhat, scripts are JavaScript/Typescript files that you can use to automate various tasks related to your U2U network development and smart contract deployment. These scripts are typically used to perform actions such as deploying smart contracts, interacting with contracts, testing, and more. Hardhat provides a powerful scripting environment that allows you to work with U2U network and your smart contracts programmatically.
Deployment script
Now, let's create a script for deployment as follow:
A script should have this structure:
Put some variables, inside function main()
(remember to import ethers
library):
Then add deployment code:
We use ethers.deployContract()
to deploy the contract with given unlock time and the amount we want to lock. It returns a promise of deployed Lock
instance.
Then wait for the deployment is finished with lock.waitForDeployment()
Below is full deploy.ts
script:
Network configuration
Hardhat needs a node to connect and deploy the contract on U2U network. You need to provide network configuration to Hardhat, that is hardhat.config.js
or hardhat.config.ts
located in the project directory.
Let's say we want to deploy your contract on U2U Nebulas testnet, our configuration file should look like this:
Run deployment script
To run deployment script:
In this case, <network-name>
should be nebulas
:
It will produced:
If you face with this error:
ProviderError: insufficient balance for transfer
Your account have not enough token U2U. Please head to faucet to fund your account.
Voila! Your contract is deployed on Nebulas testnet!
Last updated