Skip to main content

celocli releasegold

View and manage Release Gold contracts

celocli releasegold:authorize#

Authorize an alternative key to be used for a given action (Vote, Validate, Attest) on behalf of the ReleaseGold instance contract.

Authorize an alternative key to be used for a given action (Vote, Validate, Attest) on behalf of the ReleaseGold instance contract.
USAGE  $ celocli releasegold:authorize
OPTIONS  --blsKey=0x                                            The BLS public key that the                                                         validator is using for                                                         consensus, should pass proof of                                                         possession. 96 bytes.
  --blsPop=0x                                            The BLS public key                                                         proof-of-possession, which                                                         consists of a signature on the                                                         account address. 48 bytes.
  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
  --role=vote|validator|attestation                      (required)
  --signature=0x                                         (required) Signature (a.k.a.                                                         proof-of-possession) of the                                                         signer key
  --signer=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d    (required) The signer key that                                                         is to be used for voting                                                         through the ReleaseGold                                                         instance
EXAMPLES  authorize --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631 --role vote --signer  0x6ecbe1db9ef729cbe972c83fb886247691fb6beb --signature  0x1b9fca4bbb5bfb1dbe69ef1cddbd9b4202dcb6b134c5170611e1e36ecfa468d7b46c85328d504934fce6  c2a1571603a50ae224d2b32685e84d4d1a1eebad8452eb
  authorize --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631 --role validator  --signer 0x6ecbe1db9ef729cbe972c83fb886247691fb6beb --signature  0x1b9fca4bbb5bfb1dbe69ef1cddbd9b4202dcb6b134c5170611e1e36ecfa468d7b46c85328d504934fce6  c2a1571603a50ae224d2b32685e84d4d1a1eebad8452eb --blsKey  0x4fa3f67fc913878b068d1fa1cdddc54913d3bf988dbe5a36a20fa888f20d4894c408a6773f3d7bde1115  4f2a3076b700d345a42fd25a0e5e83f4db5586ac7979ac2053cd95d8f2efd3e959571ceccaa743e02cf4be  3f5d7aaddb0b06fc9aff00 --blsPop  0xcdb77255037eb68897cd487fdd85388cbda448f617f874449d4b11588b0b7ad8ddc20d9bb450b513bb35  664ea3923900
  authorize --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631 --role attestation  --signer 0x6ecbe1db9ef729cbe972c83fb886247691fb6beb --signature  0x1b9fca4bbb5bfb1dbe69ef1cddbd9b4202dcb6b134c5170611e1e36ecfa468d7b46c85328d504934fce6  c2a1571603a50ae224d2b32685e84d4d1a1eebad8452eb

See code: src/commands/releasegold/authorize.ts

celocli releasegold:create-account#

Creates a new account for the ReleaseGold instance

Creates a new account for the ReleaseGold instance
USAGE  $ celocli releasegold:create-account
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
EXAMPLE  create-account --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631

See code: src/commands/releasegold/create-account.ts

celocli releasegold:locked-gold#

Perform actions [lock, unlock, withdraw] on CELO that has been locked via the provided ReleaseGold contract.

Perform actions [lock, unlock, withdraw] on CELO that has been locked via the provided ReleaseGold contract.
USAGE  $ celocli releasegold:locked-gold
OPTIONS  -a, --action=lock|unlock|withdraw                      (required) Action to perform on                                                         contract's gold
  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
  --value=10000000000000000000000                        (required) Amount of gold to                                                         perform `action` with
  --yes                                                  Answer yes to prompt
EXAMPLES  locked-gold --contract 0xCcc8a47BE435F1590809337BB14081b256Ae26A8 --action lock  --value 10000000000000000000000
  locked-gold --contract 0xCcc8a47BE435F1590809337BB14081b256Ae26A8 --action unlock  --value 10000000000000000000000
  locked-gold --contract 0xCcc8a47BE435F1590809337BB14081b256Ae26A8 --action withdraw  --value 10000000000000000000000

See code: src/commands/releasegold/locked-gold.ts

celocli releasegold:refund-and-finalize#

Refund the given contract's balance to the appopriate parties and destroy the contact. Can only be called by the release owner of revocable ReleaseGold instances.

Refund the given contract's balance to the appopriate parties and destroy the contact. Can only be called by the release owner of revocable ReleaseGold instances.
USAGE  $ celocli releasegold:refund-and-finalize
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
EXAMPLE  refund-and-finalize --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631

See code: src/commands/releasegold/refund-and-finalize.ts

celocli releasegold:revoke#

Revoke the given contract instance. Once revoked, any Locked Gold can be unlocked by the release owner. The beneficiary will then be able to withdraw any released Gold that had yet to be withdrawn, and the remainder can be transferred by the release owner to the refund address. Note that not all ReleaseGold instances are revokable.

Revoke the given contract instance. Once revoked, any Locked Gold can be unlocked by the release owner. The beneficiary will then be able to withdraw any released Gold that had yet to be withdrawn, and the remainder can be transferred by the release owner to the refund address. Note that not all ReleaseGold instances are revokable.
USAGE  $ celocli releasegold:revoke
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
  --yesreally                                            Override prompt to set                                                         liquidity (be careful!)
EXAMPLE  revoke --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631

See code: src/commands/releasegold/revoke.ts

celocli releasegold:revoke-votes#

Revokes votes for the given contract's account from the given group's account

Revokes `votes` for the given contract's account from the given group's account
USAGE  $ celocli releasegold:revoke-votes
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
  --group=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d     (required) Address of the group                                                         to revoke votes from
  --votes=votes                                          (required) The number of votes                                                         to revoke
EXAMPLE  revoke-votes --contract 0x47e172F6CfB6c7D01C1574fa3E2Be7CC73269D95 --group  0x5409ED021D9299bf6814279A6A1411A7e866A631 --votes 100

See code: src/commands/releasegold/revoke-votes.ts

celocli releasegold:set-account#

Set account properties of the ReleaseGold instance account such as name, data encryption key, and the metadata URL

Set account properties of the ReleaseGold instance account such as name, data encryption key, and the metadata URL
USAGE  $ celocli releasegold:set-account
OPTIONS  -p, --property=name|dataEncryptionKey|metaURL          (required) Property type to set
  -v, --value=value                                      (required) Property value to                                                         set
  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
EXAMPLES  set-account --contract 0x5719118266779B58D0f9519383A4A27aA7b829E5 --property name  --value mywallet
  set-account --contract 0x5719118266779B58D0f9519383A4A27aA7b829E5 --property  dataEncryptionKey --value  0x041bb96e35f9f4b71ca8de561fff55a249ddf9d13ab582bdd09a09e75da68ae4cd0ab7038030f41b2374  98b4d76387ae878dc8d98fd6f6db2c15362d1a3bf11216
  set-account --contract 0x5719118266779B58D0f9519383A4A27aA7b829E5 --property metaURL  --value www.test.com

See code: src/commands/releasegold/set-account.ts

celocli releasegold:set-account-wallet-address#

Set the ReleaseGold contract account's wallet address

Set the ReleaseGold contract account's wallet address
USAGE  $ celocli releasegold:set-account-wallet-address
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d      (required) Address of the ReleaseGold Contract
  --globalHelp      View all available global flags
  --pop=pop      ECDSA PoP for signer over contract's account
  --walletAddress=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d      (required) Address of wallet to set for contract's account and signer of PoP. 0x0 if      owner wants payers to contact them directly.
EXAMPLE  set-account-wallet-address --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631  --walletAddress 0xE36Ea790bc9d7AB70C55260C66D52b1eca985f84 --pop  0x1b3e611d05e46753c43444cdc55c2cc3d95c54da0eba2464a8cc8cb01bd57ae8bb3d82a0e293ca97e581  3e7fb9b624127f42ef0871d025d8a56fe2f8f08117e25b

See code: src/commands/releasegold/set-account-wallet-address.ts

celocli releasegold:set-beneficiary#

Set the beneficiary of the ReleaseGold contract. This command is gated via a multi-sig, so this is expected to be called twice: once by the contract's beneficiary and once by the contract's releaseOwner. Once both addresses call this command with the same parameters, the tx will execute.

Set the beneficiary of the ReleaseGold contract. This command is gated via a multi-sig, so this is expected to be called twice: once by the contract's beneficiary and once by the contract's releaseOwner. Once both addresses call this command with the same parameters, the tx will execute.
USAGE  $ celocli releasegold:set-beneficiary
OPTIONS  --beneficiary=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                            new beneficiary
  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d     (required) Address of the                                                            ReleaseGold Contract
  --from=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d         (required) Address to submit                                                            multisig transaction from                                                            (one of the owners)
  --globalHelp                                              View all available global                                                            flags
  --yesreally                                               Override prompt to set new                                                            beneficiary (be careful!)
EXAMPLE  set-beneficiary --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631 --from  0xE36Ea790bc9d7AB70C55260C66D52b1eca985f84 --beneficiary  0x6Ecbe1DB9EF729CBe972C83Fb886247691Fb6beb

See code: src/commands/releasegold/set-beneficiary.ts

celocli releasegold:set-can-expire#

Set the canExpire flag for the given ReleaseGold contract

Set the canExpire flag for the given ReleaseGold contract
USAGE  $ celocli releasegold:set-can-expire
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
  --value=(true|false|True|False)                        (required) canExpire value
  --yesreally                                            Override prompt to set                                                         expiration flag (be careful!)
EXAMPLE  set-can-expire --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631 --value true

See code: src/commands/releasegold/set-can-expire.ts

celocli releasegold:set-liquidity-provision#

Set the liquidity provision to true, allowing the beneficiary to withdraw released gold.

Set the liquidity provision to true, allowing the beneficiary to withdraw released gold.
USAGE  $ celocli releasegold:set-liquidity-provision
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
  --yesreally                                            Override prompt to set                                                         liquidity (be careful!)
EXAMPLE  set-liquidity-provision --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631

See code: src/commands/releasegold/set-liquidity-provision.ts

celocli releasegold:set-max-distribution#

Set the maximum distribution of gold for the given contract

Set the maximum distribution of gold for the given contract
USAGE  $ celocli releasegold:set-max-distribution
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --distributionRatio=distributionRatio                  (required) Amount in range [0,                                                         1000] (3 significant figures)                                                         indicating % of total balance                                                         available for distribution.
  --globalHelp                                           View all available global flags
  --yesreally                                            Override prompt to set new                                                         maximum distribution (be                                                         careful!)
EXAMPLE  set-max-distribution --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631  --distributionRatio 1000

See code: src/commands/releasegold/set-max-distribution.ts

celocli releasegold:show#

Show info on a ReleaseGold instance contract.

Show info on a ReleaseGold instance contract.
USAGE  $ celocli releasegold:show
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
EXAMPLE  show --contract 0x47e172F6CfB6c7D01C1574fa3E2Be7CC73269D95

See code: src/commands/releasegold/show.ts

celocli releasegold:transfer-dollars#

Transfer Celo Dollars from the given contract address. Dollars may be accrued to the ReleaseGold contract via validator epoch rewards.

Transfer Celo Dollars from the given contract address. Dollars may be accrued to the ReleaseGold contract via validator epoch rewards.
USAGE  $ celocli releasegold:transfer-dollars
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
  --to=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d        (required) Address of the                                                         recipient of Celo Dollars                                                         transfer
  --value=10000000000000000000000                        (required) Value (in Wei) of                                                         Celo Dollars to transfer
EXAMPLE  transfer-dollars --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631 --to  0x6Ecbe1DB9EF729CBe972C83Fb886247691Fb6beb --value 10000000000000000000000

See code: src/commands/releasegold/transfer-dollars.ts

celocli releasegold:withdraw#

Withdraws value released gold to the beneficiary address. Fails if value worth of gold has not been released yet.

Withdraws `value` released gold to the beneficiary address. Fails if `value` worth of gold has not been released yet.
USAGE  $ celocli releasegold:withdraw
OPTIONS  --contract=0xc1912fEE45d61C87Cc5EA59DaE31190FFFFf232d  (required) Address of the                                                         ReleaseGold Contract
  --globalHelp                                           View all available global flags
  --value=10000000000000000000000                        (required) Amount of released                                                         gold (in wei) to withdraw
EXAMPLE  withdraw --contract 0x5409ED021D9299bf6814279A6A1411A7e866A631 --value  10000000000000000000000

See code: src/commands/releasegold/withdraw.ts