From 1207664bbb30caf897c28e91eb71b521ad1f797b Mon Sep 17 00:00:00 2001 From: Michael Vines Date: Thu, 22 Aug 2019 13:51:16 -0700 Subject: [PATCH] Rename solana-wallet program to just solana (#5604) * Rename wallet/ to cli/ * Rename the solana-wallet crate to solana-cli * Rename solana-wallet program to solana * cargo fmt --- Cargo.lock | 72 ++++++++++---------- Cargo.toml | 2 +- book/src/SUMMARY.md | 2 +- book/src/{wallet.md => cli.md} | 82 +++++++++++------------ book/src/running-replicator.md | 10 +-- book/src/validator-monitor.md | 12 ++-- book/src/validator-stake.md | 10 +-- book/src/validator-start.md | 20 +++--- book/src/validator-testnet.md | 10 +-- {wallet => cli}/.gitignore | 0 {wallet => cli}/Cargo.toml | 6 +- wallet/wallet-help.sh => cli/cli-help.sh | 6 +- {wallet => cli}/src/config.rs | 0 {wallet => cli}/src/display.rs | 0 {wallet => cli}/src/lib.rs | 0 {wallet => cli}/src/main.rs | 6 +- {wallet => cli}/src/wallet.rs | 0 {wallet => cli}/tests/deploy.rs | 2 +- {wallet => cli}/tests/fixtures/build.sh | 0 {wallet => cli}/tests/fixtures/noop.so | Bin {wallet => cli}/tests/pay.rs | 6 +- {wallet => cli}/tests/request_airdrop.rs | 2 +- multinode-demo/common.sh | 25 +++++-- multinode-demo/delegate-stake.sh | 8 +-- multinode-demo/replicator.sh | 4 +- multinode-demo/validator.sh | 2 +- scripts/cargo-install-all.sh | 2 +- scripts/solana-install-deploy.sh | 4 +- scripts/wallet-sanity.sh | 14 ++-- 29 files changed, 162 insertions(+), 145 deletions(-) rename book/src/{wallet.md => cli.md} (80%) rename {wallet => cli}/.gitignore (100%) rename {wallet => cli}/Cargo.toml (96%) rename wallet/wallet-help.sh => cli/cli-help.sh (79%) rename {wallet => cli}/src/config.rs (100%) rename {wallet => cli}/src/display.rs (100%) rename {wallet => cli}/src/lib.rs (100%) rename {wallet => cli}/src/main.rs (97%) rename {wallet => cli}/src/wallet.rs (100%) rename {wallet => cli}/tests/deploy.rs (97%) rename {wallet => cli}/tests/fixtures/build.sh (100%) rename {wallet => cli}/tests/fixtures/noop.so (100%) rename {wallet => cli}/tests/pay.rs (99%) rename {wallet => cli}/tests/request_airdrop.rs (93%) diff --git a/Cargo.lock b/Cargo.lock index 0138fe8e22..e20be5089f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3168,6 +3168,42 @@ dependencies = [ "cc 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "solana-cli" +version = "0.18.0-pre2" +dependencies = [ + "bincode 1.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "chrono 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", + "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)", + "console 0.7.7 (registry+https://github.com/rust-lang/crates.io-index)", + "criterion-stats 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ctrlc 3.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "pretty-hex 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.99 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.99 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_yaml 0.8.9 (registry+https://github.com/rust-lang/crates.io-index)", + "solana-budget-api 0.18.0-pre2", + "solana-budget-program 0.18.0-pre2", + "solana-client 0.18.0-pre2", + "solana-core 0.18.0-pre2", + "solana-drone 0.18.0-pre2", + "solana-logger 0.18.0-pre2", + "solana-netutil 0.18.0-pre2", + "solana-runtime 0.18.0-pre2", + "solana-sdk 0.18.0-pre2", + "solana-stake-api 0.18.0-pre2", + "solana-storage-api 0.18.0-pre2", + "solana-vote-api 0.18.0-pre2", + "solana-vote-signer 0.18.0-pre2", + "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "solana-client" version = "0.18.0-pre2" @@ -3898,42 +3934,6 @@ dependencies = [ "solana-sdk 0.18.0-pre2", ] -[[package]] -name = "solana-wallet" -version = "0.18.0-pre2" -dependencies = [ - "bincode 1.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "bs58 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", - "chrono 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", - "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)", - "console 0.7.7 (registry+https://github.com/rust-lang/crates.io-index)", - "criterion-stats 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "ctrlc 3.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "pretty-hex 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.99 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.99 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.40 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_yaml 0.8.9 (registry+https://github.com/rust-lang/crates.io-index)", - "solana-budget-api 0.18.0-pre2", - "solana-budget-program 0.18.0-pre2", - "solana-client 0.18.0-pre2", - "solana-core 0.18.0-pre2", - "solana-drone 0.18.0-pre2", - "solana-logger 0.18.0-pre2", - "solana-netutil 0.18.0-pre2", - "solana-runtime 0.18.0-pre2", - "solana-sdk 0.18.0-pre2", - "solana-stake-api 0.18.0-pre2", - "solana-storage-api 0.18.0-pre2", - "solana-vote-api 0.18.0-pre2", - "solana-vote-signer 0.18.0-pre2", - "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "solana_libra_bytecode_verifier" version = "0.0.0" diff --git a/Cargo.toml b/Cargo.toml index ed4acf233e..4afd17f6f2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -53,7 +53,7 @@ members = [ "utils/netutil", "utils/fixed_buf", "vote-signer", - "wallet", + "cli", ] exclude = [ diff --git a/book/src/SUMMARY.md b/book/src/SUMMARY.md index 5e9f75bbea..74ec1f9878 100644 --- a/book/src/SUMMARY.md +++ b/book/src/SUMMARY.md @@ -51,7 +51,7 @@ - [Blockstreamer](blockstreamer.md) - [JSON RPC API](jsonrpc-api.md) - [JavaScript API](javascript-api.md) - - [solana-wallet CLI](wallet.md) + - [solana CLI](cli.md) - [Accepted Design Proposals](proposals.md) - [Ledger Replication](ledger-replication-to-implement.md) diff --git a/book/src/wallet.md b/book/src/cli.md similarity index 80% rename from book/src/wallet.md rename to book/src/cli.md index 7f734788b6..526237af0f 100644 --- a/book/src/wallet.md +++ b/book/src/cli.md @@ -1,6 +1,6 @@ -## solana-wallet CLI +## solana CLI -The [solana crate](https://crates.io/crates/solana) is distributed with a command-line interface tool +The [solana-cli crate](https://crates.io/crates/solana-cli) provides a command-line interface tool for Solana ### Examples @@ -8,7 +8,7 @@ The [solana crate](https://crates.io/crates/solana) is distributed with a comman ```sh // Command -$ solana-wallet address +$ solana address // Return @@ -18,7 +18,7 @@ $ solana-wallet address ```sh // Command -$ solana-wallet airdrop 123 +$ solana airdrop 123 // Return "Your balance is: 123" @@ -28,7 +28,7 @@ $ solana-wallet airdrop 123 ```sh // Command -$ solana-wallet balance +$ solana balance // Return "Your balance is: 123" @@ -38,7 +38,7 @@ $ solana-wallet balance ```sh // Command -$ solana-wallet confirm +$ solana confirm // Return "Confirmed" / "Not found" / "Transaction failed with error " @@ -48,7 +48,7 @@ $ solana-wallet confirm ```sh // Command -$ solana-wallet deploy +$ solana deploy // Return @@ -58,7 +58,7 @@ $ solana-wallet deploy ```sh // Command -$ solana-wallet pay 123 +$ solana pay 123 // Return @@ -68,7 +68,7 @@ $ solana-wallet pay 123 ```sh // Command -$ solana-wallet pay 123 \ +$ solana pay 123 \ --after 2018-12-24T23:59:00 --require-timestamp-from // Return @@ -81,7 +81,7 @@ $ solana-wallet pay 123 \ A third party must send a signature to unlock the lamports. ```sh // Command -$ solana-wallet pay 123 \ +$ solana pay 123 \ --require-signature-from // Return @@ -92,7 +92,7 @@ $ solana-wallet pay 123 \ ```sh // Command -$ solana-wallet pay 123 \ +$ solana pay 123 \ --after 2018-12-24T23:59 --require-timestamp-from \ --require-signature-from @@ -104,7 +104,7 @@ $ solana-wallet pay 123 \ ```sh // Command -$ solana-wallet pay 123 \ +$ solana pay 123 \ --require-signature-from \ --require-signature-from @@ -116,7 +116,7 @@ $ solana-wallet pay 123 \ ```sh // Command -$ solana-wallet pay 123 \ +$ solana pay 123 \ --require-signature-from \ --cancelable @@ -128,7 +128,7 @@ $ solana-wallet pay 123 \ ```sh // Command -$ solana-wallet cancel +$ solana cancel // Return @@ -138,7 +138,7 @@ $ solana-wallet cancel ```sh // Command -$ solana-wallet send-signature +$ solana send-signature // Return @@ -149,7 +149,7 @@ $ solana-wallet send-signature Use the current system time: ```sh // Command -$ solana-wallet send-timestamp +$ solana send-timestamp // Return @@ -159,7 +159,7 @@ Or specify some other arbitrary timestamp: ```sh // Command -$ solana-wallet send-timestamp --date 2018-12-24T23:59:00 +$ solana send-timestamp --date 2018-12-24T23:59:00 // Return @@ -168,10 +168,10 @@ $ solana-wallet send-timestamp --date 2018-12-24T23:59:00 ### Usage ```manpage -solana-wallet 0.12.0 +solana 0.12.0 USAGE: - solana-wallet [FLAGS] [OPTIONS] [SUBCOMMAND] + solana [FLAGS] [OPTIONS] [SUBCOMMAND] FLAGS: -h, --help Prints help information @@ -201,11 +201,11 @@ SUBCOMMANDS: ``` ```manpage -solana-wallet-address +solana-address Get your public key USAGE: - solana-wallet address + solana address FLAGS: -h, --help Prints help information @@ -213,11 +213,11 @@ FLAGS: ``` ```manpage -solana-wallet-airdrop +solana-airdrop Request a batch of lamports USAGE: - solana-wallet airdrop + solana airdrop FLAGS: -h, --help Prints help information @@ -228,11 +228,11 @@ ARGS: ``` ```manpage -solana-wallet-balance +solana-balance Get your balance USAGE: - solana-wallet balance + solana balance FLAGS: -h, --help Prints help information @@ -240,11 +240,11 @@ FLAGS: ``` ```manpage -solana-wallet-cancel +solana-cancel Cancel a transfer USAGE: - solana-wallet cancel + solana cancel FLAGS: -h, --help Prints help information @@ -255,11 +255,11 @@ ARGS: ``` ```manpage -solana-wallet-confirm +solana-confirm Confirm transaction by signature USAGE: - solana-wallet confirm + solana confirm FLAGS: -h, --help Prints help information @@ -270,11 +270,11 @@ ARGS: ``` ```manpage -solana-wallet-deploy +solana-deploy Deploy a program USAGE: - solana-wallet deploy + solana deploy FLAGS: -h, --help Prints help information @@ -285,11 +285,11 @@ ARGS: ``` ```manpage -solana-wallet-fees +solana-fees Display current cluster fees USAGE: - solana-wallet fees + solana fees FLAGS: -h, --help Prints help information @@ -297,11 +297,11 @@ FLAGS: ``` ```manpage -solana-wallet-get-transaction-count +solana-get-transaction-count Get current transaction count USAGE: - solana-wallet get-transaction-count + solana get-transaction-count FLAGS: -h, --help Prints help information @@ -309,11 +309,11 @@ FLAGS: ``` ```manpage -solana-wallet-pay +solana-pay Send a payment USAGE: - solana-wallet pay [FLAGS] [OPTIONS] + solana pay [FLAGS] [OPTIONS] FLAGS: --cancelable @@ -331,11 +331,11 @@ ARGS: ``` ```manpage -solana-wallet-send-signature +solana-send-signature Send a signature to authorize a transfer USAGE: - solana-wallet send-signature + solana send-signature FLAGS: -h, --help Prints help information @@ -347,11 +347,11 @@ ARGS: ``` ```manpage -solana-wallet-send-timestamp +solana-send-timestamp Send a timestamp to unlock a transfer USAGE: - solana-wallet send-timestamp [OPTIONS] + solana send-timestamp [OPTIONS] FLAGS: -h, --help Prints help information diff --git a/book/src/running-replicator.md b/book/src/running-replicator.md index 678adf9352..a7ef0da6eb 100644 --- a/book/src/running-replicator.md +++ b/book/src/running-replicator.md @@ -129,10 +129,10 @@ $ export STORAGE_IDENTITY=$(solana-keygen pubkey storage-keypair.json) ``` Then set up the storage accounts for your replicator by running: ```bash -$ solana-wallet --keypair replicator-keypair.json airdrop 100000 -$ solana-wallet --keypair replicator-keypair.json create-replicator-storage-account $REPLICATOR_IDENTITY $STORAGE_IDENTITY +$ solana --keypair replicator-keypair.json airdrop 100000 +$ solana --keypair replicator-keypair.json create-replicator-storage-account $REPLICATOR_IDENTITY $STORAGE_IDENTITY ``` -Note: Every time the testnet restarts, run the wallet steps to setup the replicator accounts again. +Note: Every time the testnet restarts, run the steps to setup the replicator accounts again. To start the replicator: ```bash @@ -146,8 +146,8 @@ gossip network by running: $ solana-gossip --entrypoint testnet.solana.com:8001 spy ``` -Provide the **storage account pubkey** to the `solana-wallet show-storage-account` command to view +Provide the **storage account pubkey** to the `solana show-storage-account` command to view the recent mining activity from your replicator: ```bash -$ solana-wallet --keypair storage-keypair.json show-storage-account $STORAGE_IDENTITY +$ solana --keypair storage-keypair.json show-storage-account $STORAGE_IDENTITY ``` diff --git a/book/src/validator-monitor.md b/book/src/validator-monitor.md index dd4d894968..4c4c15996c 100644 --- a/book/src/validator-monitor.md +++ b/book/src/validator-monitor.md @@ -28,30 +28,30 @@ The vote pubkey for the validator can be found by running: $ solana-keygen pubkey ~/validator-vote-keypair.json ``` -Provide the **vote pubkey** to the `solana-wallet show-vote-account` command to view +Provide the **vote pubkey** to the `solana show-vote-account` command to view the recent voting activity from your validator: ```bash -$ solana-wallet show-vote-account 2ozWvfaXQd1X6uKh8jERoRGApDqSqcEy6fF1oN13LL2G +$ solana show-vote-account 2ozWvfaXQd1X6uKh8jERoRGApDqSqcEy6fF1oN13LL2G ``` ## Check Your Balance Your lamport balance should decrease by the transaction fee amount as your validator submits votes, and increase after serving as the leader: ```bash -$ solana-wallet balance +$ solana balance ``` ## Check Slot Number After your validator boots, it may take some time to catch up with the cluster. -Use the `get-slot` wallet command to view the current slot that the cluster is +Use the `get-slot` command to view the current slot that the cluster is processing: ```bash -$ solana-wallet get-slot +$ solana get-slot ``` The current slot that your validator is processing can then been seen with: ```bash -$ solana-wallet --url http://127.0.0.1:8899 get-slot +$ solana --url http://127.0.0.1:8899 get-slot ``` Until your validator has caught up, it will not be able to vote successfully and diff --git a/book/src/validator-stake.md b/book/src/validator-stake.md index f915517862..c239e96658 100644 --- a/book/src/validator-stake.md +++ b/book/src/validator-stake.md @@ -2,15 +2,15 @@ When your validator starts, it will have no stake, which means it will be ineligible to become leader. -Adding stake can be accomplished by using the `solana-wallet` CLI +Adding stake can be accomplished by using the `solana` CLI First create a stake account keypair with `solana-keygen`: ```bash $ solana-keygen new -o ~/validator-config/stake-keypair.json ``` -and use the wallet's `delegate-stake` command to stake your validator with 42 lamports: +and use the cli's `delegate-stake` command to stake your validator with 42 lamports: ```bash -$ solana-wallet delegate-stake ~/validator-config/stake-keypair.json ~/validator-vote-keypair.json 42 +$ solana delegate-stake ~/validator-config/stake-keypair.json ~/validator-vote-keypair.json 42 ``` Note that stakes need to warm up, and warmup increments are applied at Epoch boundaries, so it can take an hour @@ -28,14 +28,14 @@ commission rate set in the vote account. Stake can be deactivated by running: ```bash -$ solana-wallet deactivate-stake ~/validator-config/stake-keypair.json ~/validator-vote-keypair.json +$ solana deactivate-stake ~/validator-config/stake-keypair.json ~/validator-vote-keypair.json ``` The stake will cool down, deactivate over time. While cooling down, your stake will continue to earn rewards. Note that a stake account may only be used once, so after deactivation, use the -wallet's `withdraw-stake` command to recover the previously staked lamports. +cli's `withdraw-stake` command to recover the previously staked lamports. Be sure and redeem your credits before withdrawing all your lamports. Once the account is fully withdrawn, the account is destroyed. diff --git a/book/src/validator-start.md b/book/src/validator-start.md index a25ad36860..80eaefb12f 100644 --- a/book/src/validator-start.md +++ b/book/src/validator-start.md @@ -22,10 +22,10 @@ for more detail on cluster activity. Sanity check that you are able to interact with the cluster by receiving a small airdrop of lamports from the testnet drone: ```bash -$ solana-wallet set --url http://testnet.solana.com:8899 -$ solana-wallet get -$ solana-wallet airdrop 123 -$ solana-wallet balance +$ solana set --url http://testnet.solana.com:8899 +$ solana get +$ solana airdrop 123 +$ solana balance ``` Also try running following command to join the gossip network and view all the @@ -42,17 +42,17 @@ $ solana-keygen new -o ~/validator-keypair.json ``` ### Wallet Configuration -You can set solana-wallet configuration to use your validator keypair for all +You can set solana configuration to use your validator keypair for all following commands: ```bash -$ solana-wallet set --keypair ~/validator-keypair.json +$ solana set --keypair ~/validator-keypair.json ``` -**All following solana-wallet commands assume you have set `--keypair` config to +**All following solana commands assume you have set `--keypair` config to **your validator identity keypair.** If you haven't, you will need to add the `--keypair` argument to each command, like: ```bash -$ solana-wallet --keypair ~/validator-keypair.json airdrop 1000 +$ solana --keypair ~/validator-keypair.json airdrop 1000 ``` (You can always override the set configuration by explicitly passing the `--keypair` argument with a command.) @@ -60,14 +60,14 @@ $ solana-wallet --keypair ~/validator-keypair.json airdrop 1000 ### Validator Start Airdrop yourself some lamports to get started: ```bash -$ solana-wallet airdrop 1000 +$ solana airdrop 1000 ``` Your validator will need a vote account. Create it now with the following commands: ```bash $ solana-keygen new -o ~/validator-vote-keypair.json -$ solana-wallet create-vote-account ~/validator-vote-keypair.json ~/validator-keypair.json 1 +$ solana create-vote-account ~/validator-vote-keypair.json ~/validator-keypair.json 1 ``` Then use one of the following commands, depending on your installation diff --git a/book/src/validator-testnet.md b/book/src/validator-testnet.md index 49328bc323..097787490c 100644 --- a/book/src/validator-testnet.md +++ b/book/src/validator-testnet.md @@ -42,19 +42,19 @@ $ solana-install init 0.18.0 If you are downloading pre-compiled binaries or building from source, simply choose the release matching your desired testnet. ### Validator Commands -Solana CLI tools like solana-wallet and solana-validator-info point at +Solana CLI tools like solana and solana-validator-info point at testnet.solana.com by default. Include a `--url` argument to point at a different testnet. For instance: ```bash -$ solana-wallet --url http://beta.testnet.solana.com:8899 balance +$ solana --url http://beta.testnet.solana.com:8899 balance ``` -Solana-wallet includes `get` and `set` configuration commands to automatically +The solana cli includes `get` and `set` configuration commands to automatically set the `--url` argument for future wallet commands. For example: ```bash -$ solana-wallet set --url http://beta.testnet.solana.com:8899 -$ solana-wallet balance # Same result as command above +$ solana set --url http://beta.testnet.solana.com:8899 +$ solana balance # Same result as command above ``` (You can always override the set configuration by explicitly passing the `--url` argument with a command.) diff --git a/wallet/.gitignore b/cli/.gitignore similarity index 100% rename from wallet/.gitignore rename to cli/.gitignore diff --git a/wallet/Cargo.toml b/cli/Cargo.toml similarity index 96% rename from wallet/Cargo.toml rename to cli/Cargo.toml index 688f21e813..5acb14e230 100644 --- a/wallet/Cargo.toml +++ b/cli/Cargo.toml @@ -1,7 +1,7 @@ [package] authors = ["Solana Maintainers "] edition = "2018" -name = "solana-wallet" +name = "solana-cli" description = "Blockchain, Rebuilt for Scale" version = "0.18.0-pre2" repository = "https://github.com/solana-labs/solana" @@ -44,3 +44,7 @@ solana-budget-program = { path = "../programs/budget_program", version = "0.18.0 [features] cuda = [] + +[[bin]] +name = "solana" +path = "src/main.rs" diff --git a/wallet/wallet-help.sh b/cli/cli-help.sh similarity index 79% rename from wallet/wallet-help.sh rename to cli/cli-help.sh index 40f357da9f..f462925185 100755 --- a/wallet/wallet-help.sh +++ b/cli/cli-help.sh @@ -3,11 +3,11 @@ set -e cd "$(dirname "$0")"/.. -cargo build --package solana-wallet +cargo build --package solana-cli export PATH=$PWD/target/debug:$PATH echo "\`\`\`manpage" -solana-wallet --help +solana --help echo "\`\`\`" echo "" @@ -15,7 +15,7 @@ commands=(address airdrop balance cancel confirm deploy fees get-transaction-cou for x in "${commands[@]}"; do echo "\`\`\`manpage" - solana-wallet "${x}" --help + solana "${x}" --help echo "\`\`\`" echo "" done diff --git a/wallet/src/config.rs b/cli/src/config.rs similarity index 100% rename from wallet/src/config.rs rename to cli/src/config.rs diff --git a/wallet/src/display.rs b/cli/src/display.rs similarity index 100% rename from wallet/src/display.rs rename to cli/src/display.rs diff --git a/wallet/src/lib.rs b/cli/src/lib.rs similarity index 100% rename from wallet/src/lib.rs rename to cli/src/lib.rs diff --git a/wallet/src/main.rs b/cli/src/main.rs similarity index 97% rename from wallet/src/main.rs rename to cli/src/main.rs index 07a18d9875..e06cd6f175 100644 --- a/wallet/src/main.rs +++ b/cli/src/main.rs @@ -1,9 +1,9 @@ use clap::{crate_description, crate_name, crate_version, Arg, ArgGroup, ArgMatches, SubCommand}; use console::style; +use solana_cli::config::{self, Config}; +use solana_cli::display::println_name_value; +use solana_cli::wallet::{app, parse_command, process_command, WalletConfig, WalletError}; use solana_sdk::signature::{gen_keypair_file, read_keypair, KeypairUtil}; -use solana_wallet::config::{self, Config}; -use solana_wallet::display::println_name_value; -use solana_wallet::wallet::{app, parse_command, process_command, WalletConfig, WalletError}; use std::error; fn parse_settings(matches: &ArgMatches<'_>) -> Result> { diff --git a/wallet/src/wallet.rs b/cli/src/wallet.rs similarity index 100% rename from wallet/src/wallet.rs rename to cli/src/wallet.rs diff --git a/wallet/tests/deploy.rs b/cli/tests/deploy.rs similarity index 97% rename from wallet/tests/deploy.rs rename to cli/tests/deploy.rs index 9e39c3f581..aa3e0d402c 100644 --- a/wallet/tests/deploy.rs +++ b/cli/tests/deploy.rs @@ -1,10 +1,10 @@ use serde_json::{json, Value}; +use solana_cli::wallet::{process_command, WalletCommand, WalletConfig}; use solana_client::rpc_client::RpcClient; use solana_client::rpc_request::RpcRequest; use solana_core::validator::new_validator_for_tests; use solana_drone::drone::run_local_drone; use solana_sdk::bpf_loader; -use solana_wallet::wallet::{process_command, WalletCommand, WalletConfig}; use std::fs::{remove_dir_all, File}; use std::io::Read; use std::path::PathBuf; diff --git a/wallet/tests/fixtures/build.sh b/cli/tests/fixtures/build.sh similarity index 100% rename from wallet/tests/fixtures/build.sh rename to cli/tests/fixtures/build.sh diff --git a/wallet/tests/fixtures/noop.so b/cli/tests/fixtures/noop.so similarity index 100% rename from wallet/tests/fixtures/noop.so rename to cli/tests/fixtures/noop.so diff --git a/wallet/tests/pay.rs b/cli/tests/pay.rs similarity index 99% rename from wallet/tests/pay.rs rename to cli/tests/pay.rs index 7ce9619198..8961e3d215 100644 --- a/wallet/tests/pay.rs +++ b/cli/tests/pay.rs @@ -1,12 +1,12 @@ use chrono::prelude::*; use serde_json::Value; +use solana_cli::wallet::{ + process_command, request_and_confirm_airdrop, WalletCommand, WalletConfig, +}; use solana_client::rpc_client::RpcClient; use solana_drone::drone::run_local_drone; use solana_sdk::pubkey::Pubkey; use solana_sdk::signature::KeypairUtil; -use solana_wallet::wallet::{ - process_command, request_and_confirm_airdrop, WalletCommand, WalletConfig, -}; use std::fs::remove_dir_all; use std::sync::mpsc::channel; diff --git a/wallet/tests/request_airdrop.rs b/cli/tests/request_airdrop.rs similarity index 93% rename from wallet/tests/request_airdrop.rs rename to cli/tests/request_airdrop.rs index 5d7d85f317..deb19d3f56 100644 --- a/wallet/tests/request_airdrop.rs +++ b/cli/tests/request_airdrop.rs @@ -1,8 +1,8 @@ +use solana_cli::wallet::{process_command, WalletCommand, WalletConfig}; use solana_client::rpc_client::RpcClient; use solana_core::validator::new_validator_for_tests; use solana_drone::drone::run_local_drone; use solana_sdk::signature::KeypairUtil; -use solana_wallet::wallet::{process_command, WalletCommand, WalletConfig}; use std::fs::remove_dir_all; use std::sync::mpsc::channel; diff --git a/multinode-demo/common.sh b/multinode-demo/common.sh index b1a0de5908..97d9aa79b4 100644 --- a/multinode-demo/common.sh +++ b/multinode-demo/common.sh @@ -26,7 +26,11 @@ fi if [[ -n $USE_INSTALL || ! -f "$SOLANA_ROOT"/Cargo.toml ]]; then solana_program() { declare program="$1" - printf "solana-%s" "$program" + if [[ -z $program ]]; then + printf "solana" + else + printf "solana-%s" "$program" + fi } else solana_program() { @@ -36,14 +40,23 @@ else program=${BASH_REMATCH[1]} features+="cuda" fi - if [[ -r "$SOLANA_ROOT/$program"/Cargo.toml ]]; then - maybe_package="--package solana-$program" + + declare crate="$program" + if [[ -z $program ]]; then + crate="cli" + program="solana" + else + program="solana-$program" + fi + + if [[ -r "$SOLANA_ROOT/$crate"/Cargo.toml ]]; then + maybe_package="--package solana-$crate" fi if [[ -n $NDEBUG ]]; then maybe_release=--release fi - declare manifest_path="--manifest-path=$SOLANA_ROOT/$program/Cargo.toml" - printf "cargo run $manifest_path $maybe_release $maybe_package --bin solana-%s %s -- " "$program" "$features" + declare manifest_path="--manifest-path=$SOLANA_ROOT/$crate/Cargo.toml" + printf "cargo run $manifest_path $maybe_release $maybe_package --bin %s %s -- " "$program" "$features" } fi @@ -55,7 +68,7 @@ solana_genesis=$(solana_program genesis) solana_gossip=$(solana_program gossip) solana_keygen=$(solana_program keygen) solana_ledger_tool=$(solana_program ledger-tool) -solana_wallet=$(solana_program wallet) +solana_cli=$(solana_program) solana_replicator=$(solana_program replicator) export RUST_BACKTRACE=1 diff --git a/multinode-demo/delegate-stake.sh b/multinode-demo/delegate-stake.sh index 767042f899..a25407d12b 100755 --- a/multinode-demo/delegate-stake.sh +++ b/multinode-demo/delegate-stake.sh @@ -95,15 +95,15 @@ fi if ((airdrops_enabled)); then declare fees=100 # TODO: No hardcoded transaction fees, fetch the current cluster fees - $solana_wallet "${common_args[@]}" airdrop $((stake_lamports+fees)) + $solana_cli "${common_args[@]}" airdrop $((stake_lamports+fees)) fi $solana_keygen new -o "$stake_keypair_path" set -x -$solana_wallet "${common_args[@]}" \ +$solana_cli "${common_args[@]}" \ show-vote-account "$vote_keypair_path" -$solana_wallet "${common_args[@]}" \ +$solana_cli "${common_args[@]}" \ delegate-stake $maybe_force "$stake_keypair_path" "$vote_keypair_path" "$stake_lamports" -$solana_wallet "${common_args[@]}" show-stake-account "$stake_keypair_path" +$solana_cli "${common_args[@]}" show-stake-account "$stake_keypair_path" diff --git a/multinode-demo/replicator.sh b/multinode-demo/replicator.sh index b21b73abfa..01f0541d3c 100755 --- a/multinode-demo/replicator.sh +++ b/multinode-demo/replicator.sh @@ -62,7 +62,7 @@ if [[ ! -r $identity_keypair ]]; then $solana_keygen new -o "$identity_keypair" # TODO: https://github.com/solana-labs/solminer/blob/9cd2289/src/replicator.js#L17-L18 - $solana_wallet --keypair "$identity_keypair" --url "$rpc_url" \ + $solana_cli --keypair "$identity_keypair" --url "$rpc_url" \ airdrop 100000 fi identity_pubkey=$($solana_keygen pubkey "$identity_keypair") @@ -71,7 +71,7 @@ if [[ ! -r $storage_keypair ]]; then $solana_keygen new -o "$storage_keypair" storage_pubkey=$($solana_keygen pubkey "$storage_keypair") - $solana_wallet --keypair "$identity_keypair" --url "$rpc_url" \ + $solana_cli --keypair "$identity_keypair" --url "$rpc_url" \ create-replicator-storage-account "$identity_pubkey" "$storage_pubkey" fi diff --git a/multinode-demo/validator.sh b/multinode-demo/validator.sh index 8dee544c51..7edd985020 100755 --- a/multinode-demo/validator.sh +++ b/multinode-demo/validator.sh @@ -237,7 +237,7 @@ trap 'kill_node_and_exit' INT TERM ERR wallet() { ( set -x - $solana_wallet --keypair "$identity_keypair_path" --url "$rpc_url" "$@" + $solana_cli --keypair "$identity_keypair_path" --url "$rpc_url" "$@" ) } diff --git a/scripts/cargo-install-all.sh b/scripts/cargo-install-all.sh index 3a25937e0d..a2e69e2cd2 100755 --- a/scripts/cargo-install-all.sh +++ b/scripts/cargo-install-all.sh @@ -39,7 +39,7 @@ BIN_CRATES=( replicator validator validator-info - wallet + cli bench-exchange bench-tps ) diff --git a/scripts/solana-install-deploy.sh b/scripts/solana-install-deploy.sh index 30f42641d5..62ba841e36 100755 --- a/scripts/solana-install-deploy.sh +++ b/scripts/solana-install-deploy.sh @@ -72,10 +72,10 @@ PATH="$SOLANA_ROOT"/target/debug:$PATH set -x # shellcheck disable=SC2086 # Don't want to double quote $maybeKeypair -balance=$(solana-wallet $maybeKeypair --url "$URL" balance) +balance=$(solana $maybeKeypair --url "$URL" balance) if [[ $balance = "0 lamports" ]]; then # shellcheck disable=SC2086 # Don't want to double quote $maybeKeypair - solana-wallet $maybeKeypair --url "$URL" airdrop 42 + solana $maybeKeypair --url "$URL" airdrop 42 fi # shellcheck disable=SC2086 # Don't want to double quote $maybeKeypair diff --git a/scripts/wallet-sanity.sh b/scripts/wallet-sanity.sh index 6c3d8f0b63..8074758ac2 100755 --- a/scripts/wallet-sanity.sh +++ b/scripts/wallet-sanity.sh @@ -23,7 +23,7 @@ check_balance_output() { exec 42>&1 attempts=3 while [[ $attempts -gt 0 ]]; do - output=$($solana_wallet "${entrypoint[@]}" balance | tee >(cat - >&42)) + output=$($solana_cli "${entrypoint[@]}" balance | tee >(cat - >&42)) if [[ "$output" =~ $expected_output ]]; then break else @@ -39,8 +39,8 @@ check_balance_output() { pay_and_confirm() { exec 42>&1 - signature=$($solana_wallet "${entrypoint[@]}" pay "$@" | tail -c 88 | tee >(cat - >&42)) - $solana_wallet "${entrypoint[@]}" confirm "$signature" + signature=$($solana_cli "${entrypoint[@]}" pay "$@" | tail -c 88 | tee >(cat - >&42)) + $solana_cli "${entrypoint[@]}" confirm "$signature" } $solana_keygen new -f @@ -48,7 +48,7 @@ $solana_keygen new -f node_readiness=false timeout=60 while [[ $timeout -gt 0 ]]; do - output=$($solana_wallet "${entrypoint[@]}" get-transaction-count) + output=$($solana_cli "${entrypoint[@]}" get-transaction-count) if [[ -n $output ]]; then node_readiness=true break @@ -61,11 +61,11 @@ if ! "$node_readiness"; then exit 1 fi -$solana_wallet "${entrypoint[@]}" address +$solana_cli "${entrypoint[@]}" address check_balance_output "0 lamports" -$solana_wallet "${entrypoint[@]}" airdrop 600 +$solana_cli "${entrypoint[@]}" airdrop 600 check_balance_output "600 lamports" -$solana_wallet "${entrypoint[@]}" airdrop 400 +$solana_cli "${entrypoint[@]}" airdrop 400 check_balance_output "1000 lamports" pay_and_confirm $garbage_address 50 check_balance_output "lamports" # <-- exact number of lamports here depends on the current cluster fees