Yin Stablecoin System Testchain
This tool will help you set up a local testchain with the yiss contracts deployed on it.
yin.js is configured with the contracts needed for yin.js.
Installation and requirements
Requires Seth, Nix, Node.js and Bash.
npm install or
yarn install to install Ganache.
scripts/launch -s vanilla-yiss --fast
If run with no arguments, it will start Ganache at
127.0.0.1:2000 with the chain data it finds in
var/chaindata, and run until killed with Ctrl-C.
var/chaindata does not exist, and the
--reset-chaindata argument is not present, the
default snapshot will be used to create it.
Once the deployment is complete, you will find the list of contract addresses in the
-s, --snapshot: Optional. This should match the name of a folder under the
snapshotsfolder. This will be copied to
var/chaindata, overwriting anything there.
-d, --deploy: Optional. If set,
scripts/deploywill be run once Ganache is set up, to deploy contracts to the test chain.
git submodule updateand skip running
dapp buildfor dapps that are already built. This is accomplished by setting the
SKIP_BUILD_IF_ALREADY_BUILTenvironment variable, so the dapp build scripts must be written (or modified; see the use of
scripts/deploy) to support it.
--reset-chaindata: Start the testchain with no data.
-u, --skip-update: Skip the git submodule updates, but still run
dapp buildon the contracts.
-p, --port: Start Ganache on a different port.
--throw-revert: Have Ganache throw an exception whenever a transaction is reverted.
--ci: If this is set, all unrecognized arguments will be treated as a new command. This command will be run, and Ganache will exit afterward.
Deploying changes to contract code
When the deploy script is run, it copies ABI files and output addresses of deployment contracts to a file in
out/ directory. These can be copied into the source code of applications working with the test chain as you see fit.
Creating new snapshots
scripts/create-snapshot NAME to copy the contents of
var/chaindata into a new folder
--force if you want to replace an existing snapshot.
./scripts/launch --deploy --reset-chaindata
You can edit
scripts/deploy-yiss to tweak the build parameters or add to it.
Copyright (C) 2019 Maker Ecosystem Growth Holdings, INC.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.