Updating Stake Pool Information
Important Reminder🔥 Any changes made in this section take effect in two epochs. A common mistake is lowering the pledge amount and removing funds too soon. This results in zero rewards as the current live pledge amount is no longer met.
First, generate the protocol-parameters.
cardano-cli query protocol-parameters \
--mainnet \
--out-file $NODE_HOME/params.jsonIf you're changing your poolMetaData.json, remember to calculate the hash of your metadata file and re-upload the updated poolMetaData.json file. For more details, refer to the section Registering Your Stake Pool.
cardano-cli stake-pool metadata-hash --pool-metadata-file poolMetaData.json > poolMetaDataHash.txtIf you changed your poolMetaData.json, copy poolMetaDataHash.txt to your cold environment.
Update the below registration-certificate transaction with your desired stake pool settings.
If you have multiple relay nodes, then change your parameters accordingly.
metadata-url must be no longer than 64 characters.
cardano-cli stake-pool registration-certificate \
--cold-verification-key-file $HOME/cold-keys/node.vkey \
--vrf-verification-key-file vrf.vkey \
--pool-pledge 1000000000 \
--pool-cost 170000000 \
--pool-margin 0.20 \
--pool-reward-account-verification-key-file stake.vkey \
--pool-owner-stake-verification-key-file stake.vkey \
--mainnet \
--single-host-pool-relay <dns based relay, example ~ relaynode1.myadapoolnamerocks.com> \
--pool-relay-port 6000 \
--metadata-url <url where you uploaded poolMetaData.json> \
--metadata-hash $(cat poolMetaDataHash.txt) \
--out-file pool.certminPoolCost is 170000000 lovelace or 170 ADA. Therefore, your --pool-cost must be at a minimum this amount.
Copy pool.cert to your hot environment.
Pledge stake to your stake pool.
Copy deleg.cert to your hot environment.
You need to find the tip of the blockchain to set the invalid-hereafter parameter properly.
Find your balance and UTXOs.
Run the build-raw transaction command.
Calculate the minimum fee:
Calculate your change output.
Build the transaction.
Copy tx.raw to your cold environment.
Sign the transaction.
Copy tx.signed to your hot environment.
Send the transaction.
Changes take effect in two epochs. After the next epoch transition, verify that your pool settings are correct.