Distribute spl tokens (#13559)
* Add helpers to covert between sdk types * Add distribute-spl-tokens to args and arg-parsing * Build spl-token transfer-checked instructions * Check spl-token balances properly * Add display handling to support spl-token * Small refactor to allow failures in allocation iter * Use Associated Token Account for spl-token distributions * Add spl token support to balances command * Update readme * Add spl-token tests * Rename spl-tokens file * Move a couple more things out of commands * Stop requiring lockup_date heading for non-stake distributions * Use epsilon for allocation retention
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
use solana_cli_config::{Config, CONFIG_FILE};
|
||||
use solana_client::rpc_client::RpcClient;
|
||||
use solana_tokens::{arg_parser::parse_args, args::Command, commands};
|
||||
use solana_tokens::{arg_parser::parse_args, args::Command, commands, spl_token};
|
||||
use std::{env, error::Error, path::Path, process};
|
||||
|
||||
fn main() -> Result<(), Box<dyn Error>> {
|
||||
@ -19,10 +19,12 @@ fn main() -> Result<(), Box<dyn Error>> {
|
||||
let client = RpcClient::new(json_rpc_url);
|
||||
|
||||
match command_args.command {
|
||||
Command::DistributeTokens(args) => {
|
||||
Command::DistributeTokens(mut args) => {
|
||||
spl_token::update_token_args(&client, &mut args.spl_token_args)?;
|
||||
commands::process_allocations(&client, &args)?;
|
||||
}
|
||||
Command::Balances(args) => {
|
||||
Command::Balances(mut args) => {
|
||||
spl_token::update_decimals(&client, &mut args.spl_token_args)?;
|
||||
commands::process_balances(&client, &args)?;
|
||||
}
|
||||
Command::TransactionLog(args) => {
|
||||
|
Reference in New Issue
Block a user