Skip to content

Commit

Permalink
init parameterized vote and removed use of alias
Browse files Browse the repository at this point in the history
  • Loading branch information
Ryun1 committed Mar 18, 2024
1 parent 475e7d6 commit 7778af0
Show file tree
Hide file tree
Showing 17 changed files with 167 additions and 119 deletions.
16 changes: 9 additions & 7 deletions scripts/cc/authorize-hot-key.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,31 +2,33 @@

echo "Authorizing your CC hot key."

# Set alias for convenience
alias container-cli="docker exec -ti sancho-node cardano-cli"
# Function to execute cardano-cli commands inside the container
container_cli() {
docker exec -ti sancho-node cardano-cli "$@"
}

# Generate CC cold keys
container-cli conway governance committee create-hot-key-authorization-certificate \
container_cli conway governance committee create-hot-key-authorization-certificate \
--cold-verification-key-file keys/cc-cold.vkey \
--hot-key-file keys/cc-hot.vkey \
--out-file ./txs/cc-auth-hot.cert \

container-cli conway transaction build \
container_cli conway transaction build \
--testnet-magic 4 \
--witness-override 2 \
--tx-in $(container-cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--tx-in $(container_cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--change-address $(cat ./keys/payment.addr) \
--certificate-file ./txs/cc-auth-hot.cert \
--out-file ./txs/cc-auth-hot-tx.raw

container-cli conway transaction sign \
container_cli conway transaction sign \
--tx-body-file ./txs/cc-auth-hot-tx.raw \
--signing-key-file ./keys/payment.skey \
--signing-key-file ./keys/cc-cold.skey \
--testnet-magic 4 \
--out-file ./txs/cc-auth-hot-tx.signed

container-cli conway transaction submit \
container_cli conway transaction submit \
--testnet-magic 4 \
--tx-file ./txs/cc-auth-hot-tx.signed

14 changes: 8 additions & 6 deletions scripts/cc/generate-cc-keys.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,23 +10,25 @@ fi
# Generate cc keys
echo "Generating consitutional committee hot and cold keys."

# Set alias for convenience
alias container-cli="docker exec -ti sancho-node cardano-cli"
# Function to execute cardano-cli commands inside the container
container_cli() {
docker exec -ti sancho-node cardano-cli "$@"
}

# Generate CC cold keys
container-cli conway governance committee key-gen-cold \
container_cli conway governance committee key-gen-cold \
--verification-key-file ./keys/cc-cold.vkey \
--signing-key-file ./keys/cc-cold.skey \

# Generate CC hot keys
container-cli conway governance committee key-gen-hot \
container_cli conway governance committee key-gen-hot \
--verification-key-file ./keys/cc-hot.vkey \
--signing-key-file ./keys/cc-hot.skey \

# Generate CC cold key hash, just so we have it
container-cli conway governance committee key-hash \
container_cli conway governance committee key-hash \
--verification-key-file ./keys/cc-cold.vkey > keys/cc-cold-key-hash.hash

# Generate CC cold key hash, just so we have it
container-cli conway governance committee key-hash \
container_cli conway governance committee key-hash \
--verification-key-file ./keys/cc-hot.vkey > keys/cc-hot-key-hash.hash
10 changes: 6 additions & 4 deletions scripts/cc/new-hot-key.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,16 @@
# Generate hot cc keys
echo "Generating new consitutional committee hot key."

# Set alias for convenience
alias container-cli="docker exec -ti sancho-node cardano-cli"
# Function to execute cardano-cli commands inside the container
container_cli() {
docker exec -ti sancho-node cardano-cli "$@"
}

# Generate CC hot keys
container-cli conway governance committee key-gen-hot \
container_cli conway governance committee key-gen-hot \
--verification-key-file keys/cc-hot.vkey \
--signing-key-file keys/cc-hot.skey \

# Generate CC hot key hash
container-cli conway governance committee key-hash \
container_cli conway governance committee key-hash \
--verification-key-file keys/cc-hot.vkey > keys/cc-hot-key-hash.hash
16 changes: 9 additions & 7 deletions scripts/cc/resign-cold-key.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,32 @@

echo "Resigning your CC cold key."

# Set alias for convenience
alias container-cli="docker exec -ti sancho-node cardano-cli"
# Function to execute cardano-cli commands inside the container
container_cli() {
docker exec -ti sancho-node cardano-cli "$@"
}

# Generate CC cold keys
container-cli conway governance committee create-cold-key-resignation-certificate \
container_cli conway governance committee create-cold-key-resignation-certificate \
--cold-verification-key-file keys/cc-cold.vkey \
--out-file ./txs/cc-resign-cold.cert \

container-cli conway transaction build \
container_cli conway transaction build \
--testnet-magic 4 \
--witness-override 2 \
--tx-in $(container-cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--tx-in $(container_cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--change-address $(cat ./keys/payment.addr) \
--certificate-file ./txs/cc-resign-cold.cert \
--out-file ./txs/cc-resign-cold-tx.raw

container-cli conway transaction sign \
container_cli conway transaction sign \
--tx-body-file ./txs/cc-resign-cold-tx.raw \
--signing-key-file ./keys/payment.skey \
--signing-key-file ./keys/cc-cold.skey \
--testnet-magic 4 \
--out-file ./txs/cc-resign-cold-tx.signed

container-cli conway transaction submit \
container_cli conway transaction submit \
--testnet-magic 4 \
--tx-file ./txs/cc-resign-cold-tx.signed

16 changes: 9 additions & 7 deletions scripts/cc/vote.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,29 +9,31 @@ ga_index="0"
# Voting on a governance action
echo "Voting on $ga_hash#$ga_index with a $choice."

# Set alias for convenience
alias container-cli="docker exec -ti sancho-node cardano-cli"
# Function to execute cardano-cli commands inside the container
container_cli() {
docker exec -ti sancho-node cardano-cli "$@"
}

container-cli conway governance vote create \
container_cli conway governance vote create \
"--$choice" \
--governance-action-tx-id $ga_hash \
--governance-action-index $ga_index \
--cc-hot-verification-key-file ./keys/cc-hot.vkey \
--out-file ./txs/ga.vote

container-cli conway transaction build --testnet-magic 4 \
--tx-in "$(container-cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]')" \
container_cli conway transaction build --testnet-magic 4 \
--tx-in "$(container_cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]')" \
--change-address $(cat ./keys/payment.addr) \
--vote-file ./txs/ga.vote \
--witness-override 2 \
--out-file ./txs/vote-tx.raw

container-cli transaction sign \
container_cli transaction sign \
--tx-body-file ./txs/vote-tx.raw \
--signing-key-file ./keys/payment.skey \
--signing-key-file ./keys/cc-hot.skey \
--testnet-magic 4 \
--out-file ./txs/vote-tx.signed

container-cli transaction submit --testnet-magic 4 \
container_cli transaction submit --testnet-magic 4 \
--tx-file ./txs/vote-tx.signed
16 changes: 9 additions & 7 deletions scripts/drep/delegate-to-self.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,29 +2,31 @@

echo "Delegating your voting rights to your DRep ID."

# Set alias for convenience
alias container-cli="docker exec -ti sancho-node cardano-cli"
# Function to execute cardano-cli commands inside the container
container_cli() {
docker exec -ti sancho-node cardano-cli "$@"
}

container-cli conway stake-address vote-delegation-certificate \
container_cli conway stake-address vote-delegation-certificate \
--stake-verification-key-file ./keys/stake.vkey \
--drep-key-hash "$(cat ./keys/drep.id)" \
--out-file ./txs/vote-deleg-key-hash.cert

container-cli conway transaction build \
container_cli conway transaction build \
--testnet-magic 4 \
--witness-override 2 \
--tx-in $(container-cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--tx-in $(container_cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--change-address $(cat ./keys/payment.addr) \
--certificate-file ./txs/vote-deleg-key-hash.cert \
--out-file ./txs/vote-deleg-tx.raw

container-cli conway transaction sign \
container_cli conway transaction sign \
--tx-body-file ./txs/vote-deleg-tx.raw \
--signing-key-file ./keys/payment.skey \
--signing-key-file ./keys/stake.skey \
--testnet-magic 4 \
--out-file ./txs/vote-deleg-tx.signed

container-cli conway transaction submit \
container_cli conway transaction submit \
--testnet-magic 4 \
--tx-file ./txs/vote-deleg-tx.signed
18 changes: 10 additions & 8 deletions scripts/drep/register.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,29 +3,31 @@
# Registering you as a drep
echo "Registering you as a DRep."

# Set alias for convenience
alias container-cli="docker exec -ti sancho-node cardano-cli"
# Function to execute cardano-cli commands inside the container
container_cli() {
docker exec -ti sancho-node cardano-cli "$@"
}

container-cli conway governance drep registration-certificate \
container_cli conway governance drep registration-certificate \
--drep-key-hash $(cat ./keys/drep.id) \
--key-reg-deposit-amt $(container-cli conway query gov-state --testnet-magic 4 | jq -r .enactState.curPParams.dRepDeposit) \
--key-reg-deposit-amt $(container_cli conway query gov-state --testnet-magic 4 | jq -r .enactState.curPParams.dRepDeposit) \
--out-file ./txs/drep-register.cert

container-cli conway transaction build \
container_cli conway transaction build \
--testnet-magic 4 \
--witness-override 2 \
--tx-in $(container-cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--tx-in $(container_cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--change-address $(cat ./keys/payment.addr) \
--certificate-file ./txs/drep-register.cert \
--out-file ./txs/drep-reg-tx.raw

container-cli conway transaction sign \
container_cli conway transaction sign \
--tx-body-file ./txs/drep-reg-tx.raw \
--signing-key-file ./keys/payment.skey \
--signing-key-file ./keys/drep.skey \
--testnet-magic 4 \
--out-file ./txs/drep-reg-tx.signed

container-cli conway transaction submit \
container_cli conway transaction submit \
--testnet-magic 4 \
--tx-file ./txs/drep-reg-tx.signed
18 changes: 10 additions & 8 deletions scripts/drep/retire.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,29 +3,31 @@
# Retiring you as a drep
echo "Retiring you as a DRep."

# Set alias for convenience
alias container-cli="docker exec -ti sancho-node cardano-cli"
# Function to execute cardano-cli commands inside the container
container_cli() {
docker exec -ti sancho-node cardano-cli "$@"
}

container-cli conway governance drep retirement-certificate \
container_cli conway governance drep retirement-certificate \
--drep-key-hash $(cat ./keys/drep.id) \
--deposit-amt $(container-cli conway query gov-state --testnet-magic 4 | jq -r .enactState.curPParams.dRepDeposit) \
--deposit-amt $(container_cli conway query gov-state --testnet-magic 4 | jq -r .enactState.curPParams.dRepDeposit) \
--out-file ./txs/drep-retire.cert

container-cli conway transaction build \
container_cli conway transaction build \
--testnet-magic 4 \
--witness-override 2 \
--tx-in $(container-cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--tx-in $(container_cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]') \
--change-address $(cat ./keys/payment.addr) \
--certificate-file ./txs/drep-retire.cert \
--out-file ./txs/drep-retire-tx.raw

container-cli conway transaction sign \
container_cli conway transaction sign \
--tx-body-file ./txs/drep-retire-tx.raw \
--signing-key-file ./keys/payment.skey \
--signing-key-file ./keys/drep.skey \
--testnet-magic 4 \
--out-file ./txs/drep-retire-tx.signed

container-cli conway transaction submit \
container_cli conway transaction submit \
--testnet-magic 4 \
--tx-file ./txs/drep-retire-tx.signed
52 changes: 34 additions & 18 deletions scripts/drep/vote.sh
Original file line number Diff line number Diff line change
@@ -1,36 +1,52 @@
#!/bin/sh
#!/bin/bash

# ~~~~~~~~~~~~ CHANGE THIS ~~~~~~~~~~~~
choice="yes" # "yes", "no" or "abstain"
ga_hash="66cbbf693a8549d0abb1b5219f1127f8176a4052ef774c11a52ff18ad1845102"
ga_index="0"
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Function to execute cardano-cli commands inside the container
container_cli() {
docker exec -ti sancho-node cardano-cli "$@"
}

# Voting on a governance action
echo "Voting on $ga_hash#$ga_index with a $choice."
# Function to display script usage
usage() {
echo "Usage: $0 <choice> <ga_id>"
echo "Example: $0 yes 66cbbf693a8549d0abb1b5219f1127f8176a4052ef774c11a52ff18ad1845102#0"
}

# Check if the correct number of arguments is provided
if [ "$#" -ne 2 ]; then
usage
exit 1
fi

# Assigning parameters to variables
choice="$1"
ga_id="$2"

# Set alias for convenience
alias container-cli="docker exec -ti sancho-node cardano-cli"
# Extract ga_hash and ga_index from ga_id
ga_hash=$(echo "$ga_id" | cut -d '#' -f 1)
ga_index=$(echo "$ga_id" | cut -d '#' -f 2)

# Voting on a governance action
echo "Voting on $ga_id with a $choice."

container-cli conway governance vote create \
container_cli conway governance vote create \
"--$choice" \
--governance-action-tx-id $ga_hash \
--governance-action-index $ga_index \
--governance-action-tx-id "$ga_hash" \
--governance-action-index "$ga_index" \
--drep-verification-key-file ./keys/drep.vkey \
--out-file ./txs/ga.vote

container-cli conway transaction build --testnet-magic 4 \
--tx-in "$(container-cli query utxo --address $(cat ./keys/payment.addr) --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]')" \
--change-address $(cat ./keys/payment.addr) \
container_cli conway transaction build --testnet-magic 4 \
--tx-in "$(container_cli query utxo --address "$(cat ./keys/payment.addr)" --testnet-magic 4 --out-file /dev/stdout | jq -r 'keys[0]')" \
--change-address "$(cat ./keys/payment.addr)" \
--vote-file ./txs/ga.vote \
--witness-override 2 \
--out-file ./txs/vote-tx.raw

container-cli transaction sign \
container_cli transaction sign \
--tx-body-file ./txs/vote-tx.raw \
--signing-key-file ./keys/drep.skey \
--signing-key-file ./keys/payment.skey \
--testnet-magic 4 \
--out-file ./txs/vote-tx.signed

container-cli transaction submit --testnet-magic 4 --tx-file ./txs/vote-tx.signed
container_cli transaction submit --testnet-magic 4 --tx-file ./txs/vote-tx.signed
Loading

0 comments on commit 7778af0

Please sign in to comment.