-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #43 from cosmic-horizon/develop
Add 500MM COHO Supply
- Loading branch information
Showing
7 changed files
with
255 additions
and
47 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
package keepers | ||
|
||
import ( | ||
"github.com/CosmWasm/wasmd/x/wasm" | ||
aquiferkeeper "github.com/cosmic-horizon/qwoyn/x/aquifer/keeper" | ||
gamekeeper "github.com/cosmic-horizon/qwoyn/x/game/keeper" | ||
intertxkeeper "github.com/cosmic-horizon/qwoyn/x/intertx/keeper" | ||
mintkeeper "github.com/cosmic-horizon/qwoyn/x/mint/keeper" | ||
stimuluskeeper "github.com/cosmic-horizon/qwoyn/x/stimulus/keeper" | ||
authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper" | ||
authzkeeper "github.com/cosmos/cosmos-sdk/x/authz/keeper" | ||
bankkeeper "github.com/cosmos/cosmos-sdk/x/bank/keeper" | ||
capabilitykeeper "github.com/cosmos/cosmos-sdk/x/capability/keeper" | ||
consensusparamkeeper "github.com/cosmos/cosmos-sdk/x/consensus/keeper" | ||
crisiskeeper "github.com/cosmos/cosmos-sdk/x/crisis/keeper" | ||
distrkeeper "github.com/cosmos/cosmos-sdk/x/distribution/keeper" | ||
evidencekeeper "github.com/cosmos/cosmos-sdk/x/evidence/keeper" | ||
feegrantkeeper "github.com/cosmos/cosmos-sdk/x/feegrant/keeper" | ||
govkeeper "github.com/cosmos/cosmos-sdk/x/gov/keeper" | ||
paramskeeper "github.com/cosmos/cosmos-sdk/x/params/keeper" | ||
slashingkeeper "github.com/cosmos/cosmos-sdk/x/slashing/keeper" | ||
stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper" | ||
upgradekeeper "github.com/cosmos/cosmos-sdk/x/upgrade/keeper" | ||
icacontrollerkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller/keeper" | ||
icahostkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host/keeper" | ||
ibcfeekeeper "github.com/cosmos/ibc-go/v7/modules/apps/29-fee/keeper" | ||
ibctransferkeeper "github.com/cosmos/ibc-go/v7/modules/apps/transfer/keeper" | ||
ibckeeper "github.com/cosmos/ibc-go/v7/modules/core/keeper" | ||
) | ||
|
||
type AppKeepers struct { | ||
AccountKeeper authkeeper.AccountKeeper | ||
BankKeeper bankkeeper.Keeper | ||
CapabilityKeeper *capabilitykeeper.Keeper | ||
StakingKeeper *stakingkeeper.Keeper | ||
SlashingKeeper slashingkeeper.Keeper | ||
MintKeeper mintkeeper.Keeper | ||
DistrKeeper distrkeeper.Keeper | ||
GovKeeper govkeeper.Keeper | ||
CrisisKeeper *crisiskeeper.Keeper | ||
UpgradeKeeper *upgradekeeper.Keeper | ||
ParamsKeeper paramskeeper.Keeper | ||
IBCKeeper *ibckeeper.Keeper // IBC Keeper must be a pointer in the app, so we can SetRouter on it correctly | ||
IBCFeeKeeper ibcfeekeeper.Keeper | ||
ICAHostKeeper icahostkeeper.Keeper | ||
ICAControllerKeeper icacontrollerkeeper.Keeper | ||
InterTxKeeper intertxkeeper.Keeper | ||
EvidenceKeeper evidencekeeper.Keeper | ||
TransferKeeper ibctransferkeeper.Keeper | ||
FeeGrantKeeper feegrantkeeper.Keeper | ||
AuthzKeeper authzkeeper.Keeper | ||
ConsensusParamsKeeper consensusparamkeeper.Keeper | ||
WasmKeeper wasm.Keeper | ||
StimulusKeeper stimuluskeeper.Keeper | ||
AquiferKeeper aquiferkeeper.Keeper | ||
GameKeeper gamekeeper.Keeper | ||
|
||
// make scoped keepers public for test purposes | ||
ScopedIBCKeeper capabilitykeeper.ScopedKeeper | ||
ScopedTransferKeeper capabilitykeeper.ScopedKeeper | ||
ScopedIBCFeeKeeper capabilitykeeper.ScopedKeeper | ||
ScopedICAControllerKeeper capabilitykeeper.ScopedKeeper | ||
ScopedInterTxKeeper capabilitykeeper.ScopedKeeper | ||
ScopedAquiferKeeper capabilitykeeper.ScopedKeeper | ||
ScopedWasmKeeper capabilitykeeper.ScopedKeeper | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
package upgrades | ||
|
||
import ( | ||
"github.com/cosmic-horizon/qwoyn/app/keepers" | ||
store "github.com/cosmos/cosmos-sdk/store/types" | ||
sdk "github.com/cosmos/cosmos-sdk/types" | ||
"github.com/cosmos/cosmos-sdk/types/module" | ||
upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" | ||
) | ||
|
||
// Upgrade defines a struct containing necessary fields that a SoftwareUpgradeProposal | ||
// must have written, in order for the state migration to go smoothly. | ||
// An upgrade must implement this struct, and then set it in the app.go. | ||
// The app.go will then define the handler. | ||
type Upgrade struct { | ||
// Upgrade version name, for the upgrade handler, e.g. `v5.1.0` | ||
UpgradeName string | ||
|
||
// CreateUpgradeHandler defines the function that creates an upgrade handler | ||
CreateUpgradeHandler func(*module.Manager, module.Configurator, keepers.AppKeepers) upgradetypes.UpgradeHandler | ||
|
||
// Store upgrades, should be used for any new modules introduced, new modules deleted, or store names renamed. | ||
StoreUpgrades store.StoreUpgrades | ||
} | ||
|
||
// Fork defines a struct containing the requisite fields for a non-software upgrade proposal | ||
// Hard Fork at a given height to implement. | ||
// There is one time code that can be added for the start of the Fork, in `BeginForkLogic`. | ||
// Any other change in the code should be height-gated, if the goal is to have old and new binaries | ||
// to be compatible prior to the upgrade height. | ||
type Fork struct { | ||
// Upgrade version name, for the upgrade handler, e.g. `v7` | ||
UpgradeName string | ||
// height the upgrade occurs at | ||
UpgradeHeight int64 | ||
|
||
// Function that runs some custom state transition code at the beginning of a fork. | ||
BeginForkLogic func(ctx sdk.Context) | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
package v5_1 | ||
|
||
import ( | ||
store "github.com/cosmos/cosmos-sdk/store/types" | ||
|
||
"github.com/cosmic-horizon/qwoyn/app/upgrades" | ||
) | ||
|
||
const ( | ||
// UpgradeName defines the on-chain upgrade name. | ||
UpgradeName = "v5.1.0" | ||
) | ||
|
||
var Upgrade = upgrades.Upgrade{ | ||
UpgradeName: UpgradeName, | ||
CreateUpgradeHandler: CreateUpgradeHandler, | ||
StoreUpgrades: store.StoreUpgrades{ | ||
Added: []string{}, | ||
}, | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
package v5_1 | ||
|
||
import ( | ||
"github.com/cosmic-horizon/qwoyn/app/keepers" | ||
minttypes "github.com/cosmic-horizon/qwoyn/x/mint/types" | ||
sdk "github.com/cosmos/cosmos-sdk/types" | ||
"github.com/cosmos/cosmos-sdk/types/module" | ||
upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" | ||
) | ||
|
||
func CreateUpgradeHandler( | ||
mm *module.Manager, | ||
configurator module.Configurator, | ||
keepers keepers.AppKeepers, | ||
) upgradetypes.UpgradeHandler { | ||
return func(ctx sdk.Context, plan upgradetypes.Plan, vm module.VersionMap) (module.VersionMap, error) { | ||
ctx.Logger().Info("start to run module migrations...") | ||
|
||
gameManager := sdk.MustAccAddressFromBech32(keepers.GameKeeper.GetParamSet(ctx).Owner) | ||
cohoAmount := sdk.NewInt(500_000_000).Mul(sdk.NewInt(1000_000)) // 500M COHO | ||
err := keepers.BankKeeper.MintCoins(ctx, minttypes.ModuleName, sdk.NewCoins(sdk.NewCoin("ucoho", cohoAmount))) | ||
if err != nil { | ||
return vm, err | ||
} | ||
|
||
err = keepers.BankKeeper.SendCoinsFromModuleToAccount(ctx, minttypes.ModuleName, gameManager, sdk.NewCoins(sdk.NewCoin("ucoho", cohoAmount))) | ||
if err != nil { | ||
return vm, err | ||
} | ||
|
||
return mm.RunMigrations(ctx, configurator, vm) | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
#!/bin/sh | ||
|
||
rm -rf ~/.qwoynd | ||
|
||
echo "silly slab oxygen reflect hawk wasp peace omit carbon pause turkey organ relax sing youth since fence increase record thing trial alien render begin" > validator.txt | ||
echo "weather leader certain hard busy blouse click patient balcony return elephant hire mule gather danger curious visual boy estate army marine cinnamon snake flight" > mnemonic.txt; | ||
echo "never chuckle bird almost jacket veteran weekend original rare habit point scorpion place gadget net train more plug upon pear renew mule material dynamic" > mnemonic2.txt; | ||
|
||
# Build genesis | ||
qwoynd50 init --chain-id=qwoyn-1 test | ||
qwoynd50 keys add validator --keyring-backend="test" < validator.txt; | ||
qwoynd50 keys add maintainer --recover --keyring-backend=test < mnemonic.txt; | ||
qwoynd50 keys add user1 --recover --keyring-backend=test < mnemonic2.txt; | ||
|
||
VALIDATOR=$(qwoynd50 keys show validator -a --keyring-backend="test") | ||
MAINTAINER=$(qwoynd50 keys show maintainer -a --keyring-backend="test") | ||
USER1=$(qwoynd50 keys show user1 -a --keyring-backend="test") | ||
# VALIDATOR=qwoyn1hzqg4r2e789930hs88wqle25ef94xajuqay93r | ||
# MAINTAINER=qwoyn1h9krsew6kpg9huzcqgmgmns0n48jx9yd5vr0n5 | ||
# USER1=qwoyn13tqzdukugulllnk3p5js3w7hzw8gclkeenzp6e | ||
qwoynd50 genesis add-genesis-account $VALIDATOR 1000000000000uqwoyn,1000000000000ucoho,1000000000000stake | ||
qwoynd50 genesis add-genesis-account $MAINTAINER 1000000000000uqwoyn,1000000000000ucoho,1000000000000stake | ||
qwoynd50 genesis add-genesis-account $USER1 1000000000000uqwoyn,1000000000000ucoho,1000000000000stake | ||
qwoynd50 genesis gentx validator 100000000stake --keyring-backend="test" --chain-id=qwoyn-1 | ||
qwoynd50 genesis collect-gentxs | ||
sed -i '' 's/"voting_period": "172800s"/"voting_period": "20s"/g' $HOME/.qwoynd/config/genesis.json | ||
|
||
# sed -i 's/stake/uqwoyn/g' $HOME/.qwoynd/config/genesis.json | ||
|
||
# Start node | ||
qwoynd50 start --pruning=nothing --minimum-gas-prices="0stake" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
#!/bin/sh | ||
|
||
qwoynd51 tx gov submit-legacy-proposal software-upgrade "v5.1.0" \ | ||
--upgrade-height=12 \ | ||
--title="Upgrade to v5.1.0" --description="Upgrade to v5.1.0" --no-validate \ | ||
--from=validator --keyring-backend=test \ | ||
--chain-id=qwoyn-1 --yes -b sync --deposit="100000000stake" | ||
|
||
qwoynd50 tx gov vote 1 yes --from validator --chain-id qwoyn-1 \ | ||
-b sync -y --keyring-backend test | ||
|
||
qwoynd50 query gov proposals | ||
|
||
qwoynd51 start --pruning=nothing --minimum-gas-prices="0stake" | ||
|
||
qwoynd51 query bank total |