# Bunga CLI tool Bunga is a tool used for interacting with Daowabunga. Using dfx to do things like create proposals and recieve motion data is very difficult and sometimes not even possible because of the way motion data is encoded. Currently Bunga is only set up to interact with multisig canister but as the other canisters are released it will be modified to interact with them as well. ## Getting started Clone this repo and run ``` cargo install --path . && bunga ``` This will install and add the bunga path. Before interacting with a multsig canister you will also need to import your dfx identity and set your multisig canister principle. You will only have to do this once. If your dfx identity is encrypted Bunga will not ever save or store it any unencrpyted way but because of that you will have to enter your password everytime you run a command using that identity You can set your multisig principal by running ``` bunga multisig set-id ``` Dfx stores your pem files ~/.config/dfx/identity/IDENTITY-NAME the pem file will be named identity.pem or identity.pem.encrypted bunga can import either version. ## Commands When running any command you can pass --network=ic after bunga to interact with a canister on mainnet. If left out bunga will default to using a local network ### bunga multisig create-txn ``` This command will start the flow to create a txn. No args are needed ``` ### bunga multisig get txns ``` Returns batch motions Optionally pass --status to recieve only motions of a certain status USAGE: bunga multisig get txns [OPTIONS] [ARGS] ARGS: The index to start retrieving motions from. defaults to 0 [default: 0] How many motions you want to recieve back. defaults to 10 [default: 10] OPTIONS: -h, --help Print help information -s, --status Get only motions with a certian status [possible values: open, executing, completed, failed, rejected] ``` ### bunga multisig get txn ``` Will return all info on the motion including the commands USAGE: bunga multisig get txn ARGS: The id of the motion OPTIONS: -h, --help Print help information ``` ### bunga multisig get signers ``` Returns info about the signers of the multisig and their voting power USAGE: bunga multisig get signers OPTIONS: -h, --help Print help information ``` ### bunga multisig get id ``` Returns the current set Principal id of the multisig USAGE: bunga multisig get id OPTIONS: -h, --help Print help information ``` ### bunga multisig set-id ``` Sets or updates the principle id for your multisig. Required to run before interacting with multisig USAGE: bunga multisig set-id ARGS: The principle id of the multisig canister OPTIONS: -h, --help Print help information ``` ### bunga multisig approve ``` Cast approval on a transaction USAGE: bunga multisig approve ARGS: The id of the motion OPTIONS: -h, --help Print help information ``` ### bunga multisig reject ``` Cast a rejection on a transaction USAGE: bunga multisig reject ARGS: The id of the motion OPTIONS: -h, --help Print help information ``` ### bunga import-identity ``` Import in an identity USAGE: bunga import-identity ARGS: The path to the PEM file you want to import. This will typical be './Users//.config/dfx/identity/default/identity.pem' the file name may be identity.pem.encrypted as well make sure you spell out the whole name OPTIONS: -h, --help Print help information ```