Deploying a smart contract

As you might have noticed, two migration-related files were created by the previous command, Migrations.sol and 1_initial_migration.js. Migrations.sol stores a number that corresponds to the last applied "migration" script. When you add a new contract and deploy the contract, the number of the last deployment in stores will increase. After the contract has run once, it will not run again. The numbering convention is x_script_name.js, with x starting at 1, that is 1_initial_migration.js. Your new contracts would typically come in scripts starting at 2_....

In our case, we will add a new migration contract to deploy CrowdFunding. Let's create a file called 2_deploy_contracts.js. 

CrowdFunding.sol defines the constructor as follows:

constructor (address _owner, uint _minimumToRaise, uint _durationProjects,
string _name, string _website)

To deploy a contract, with optional constructor arguments, you can call the truffle deploy function, deployer.deploy(contract, args..., options).

We will use the first account given to us by Ganache as the owner account, as follows:

var CrowdFunding = artifacts.require("./CrowdFunding.sol");
module.exports = (deployer, network, accounts) => {
const ownerAddress = accounts[0];
deployer.deploy(CrowdFunding, ownerAddress, 30, 60, "smartchart", "smartchart.tech");
}

Let's deploy the smart contract to our network. Run the truffle command, as follows:

truffle migrate

The following screenshot displays the result for running the command for truffle migrate:

This deploys our crowdfunding smart contract in a local Ganache blockchain environment.

To bring your local node server up, run the following command, which will bring up the pet store page in our browser:

npm run dev
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.128.78.63