You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Looking at how the deploy command is shaping up, and how the two modes of operation are so different, I think we should separate sandbox logic into a sandbox sub-command.
This are the options for the deploy command being added in #152.
soroban-cli deploy
--wasm <WASM>
WASM file to deploy
--id <CONTRACT_ID>
Contract ID to deploy to (if using the sandbox)
--ledger-file <LEDGER_FILE>
File to persist ledger state (if using the sandbox) [default: .soroban/ledger.json]
--rpc-server-url <RPC_SERVER_URL>
RPC server endpoint
--private-strkey <PRIVATE_STRKEY>
Private key to sign the transaction sent to the rpc server
--salt <SALT>
Salt to use when creating contract sent to the rpc server
--network-passphrase <NETWORK_PASSPHRASE>
Network passphrase to sign the transaction sent to the rpc server
The goal would be to split that in half like:
soroban-cli sandbox deploy
--wasm <WASM>
WASM file to deploy
--id <CONTRACT_ID>
Contract ID to deploy to
--ledger-file <LEDGER_FILE>
File to persist ledger state [default: .soroban/ledger.json]
soroban-cli deploy
--wasm <WASM>
WASM file to deploy
--rpc-server-url <RPC_SERVER_URL>
RPC server endpoint
--private-strkey <PRIVATE_STRKEY>
Private key to sign the transaction sent to the rpc server
--salt <SALT>
Salt to use when creating contract sent to the rpc server
--network-passphrase <NETWORK_PASSPHRASE>
Network passphrase to sign the transaction sent to the rpc server
hardhat (https://hardhat.org/hardhat-runner/docs/guides/deploying) – does have a local sandbox environment and interacting with it is much more similar to a real network, although this is easier for them to do because actions like deployment are scripted rather than command lined.
Alternatives are:
Keep things as they are, see how far we can get.
Change the sandbox commands to identically mimic the real commands, but this comes at a cost of making the initial learning curve steeper when first experimenting with Soroban contracts.
Looking at how the deploy command is shaping up, and how the two modes of operation are so different, I think we should separate sandbox logic into a
sandbox
sub-command.This are the options for the deploy command being added in #152.
The goal would be to split that in half like:
The flow of use would be like this:
To deploy to sandbox, or read from sandbox, etc:
To deploy to network, etc:
This design is evident in one other tools we've seen:
Other tools I looked at take different approaches:
Alternatives are:
Thoughts @tomerweller @paulbellamy @sisuresh @2opremio @tsachiherman ?
The text was updated successfully, but these errors were encountered: