mirror of
https://github.com/status-im/status-dev-cli.git
synced 2025-02-22 08:38:29 +00:00
switch-node command
This commit is contained in:
parent
e3ad2b750d
commit
cad1ed3b52
65
README.md
65
README.md
@ -15,7 +15,47 @@ Additional tools for DApps developers. These tools allows to speed up the proces
|
|||||||
npm i -g status-dev-cli
|
npm i -g status-dev-cli
|
||||||
```
|
```
|
||||||
|
|
||||||
## How to
|
## API
|
||||||
|
|
||||||
|
**Common additional parameters:**
|
||||||
|
|
||||||
|
* `--ip <device-ip>` to specify your device's IP address.
|
||||||
|
|
||||||
|
#### 1. Adding a DApp
|
||||||
|
|
||||||
|
`status-dev-cli add-dapp [dapp]`
|
||||||
|
|
||||||
|
* `dapp` — JSON containing DApp information. It is not required if your DApp contains `package.json` file. Otherwise, this map should contain `whisper-identity`, `dapp-url` and `name` fields (see the example in **Scenario** section)
|
||||||
|
|
||||||
|
You can additionally specify `--dapp-port <port>` if your DApp uses port other than 8080 and you don't specify a `dapp`JSON.
|
||||||
|
|
||||||
|
#### 2. Removing a DApp
|
||||||
|
|
||||||
|
`status-dev-cli remove-dapp [dapp]`
|
||||||
|
|
||||||
|
* `dapp` — JSON containing `whisper-identity` field. It is not required if your DApp contains `package.json` file.
|
||||||
|
|
||||||
|
#### 3. Refreshing a DApp automatically
|
||||||
|
|
||||||
|
`status-dev-cli watch-dapp [dappDir] [dapp]`
|
||||||
|
|
||||||
|
* `dapp_dir` — dir that should be observed. Not required;
|
||||||
|
* `dapp` — JSON containing `whisper-identity` field. It is not required if your DApp contains `package.json` file.
|
||||||
|
|
||||||
|
#### 4. Switching network
|
||||||
|
|
||||||
|
***Requires Status 0.9.4+ & status-dev-cli 2.2.0+!***
|
||||||
|
|
||||||
|
Typically when developing DApps, a developer uses his own private chain or a simulator.
|
||||||
|
Status inserts its own web3 object into the DApp, however, this web3 object is connected to a different network than the development one.
|
||||||
|
This command allows to switch a network. Next time you login the network will be switched back.
|
||||||
|
|
||||||
|
`status-dev-cli switch-node <url>`
|
||||||
|
|
||||||
|
* `url` (required) — the network that will be used instead of `http://localhost:8545`
|
||||||
|
|
||||||
|
|
||||||
|
## DApp development
|
||||||
|
|
||||||
To make debugging work we run a web server on your device. It runs on port 5561 on both iOS and Android, but only if you need it.
|
To make debugging work we run a web server on your device. It runs on port 5561 on both iOS and Android, but only if you need it.
|
||||||
|
|
||||||
@ -39,26 +79,3 @@ your DApp by typing http://localhost:8080 in your browser.
|
|||||||
1. Add a DApp to Status by executing `status-dev-cli add-dapp '{"whisper-identity": "dapp-test", "dapp-url": "http://localhost:8080/", "name": "My Dapp"}'`;
|
1. Add a DApp to Status by executing `status-dev-cli add-dapp '{"whisper-identity": "dapp-test", "dapp-url": "http://localhost:8080/", "name": "My Dapp"}'`;
|
||||||
2. Open the "My Dapp" on your device;
|
2. Open the "My Dapp" on your device;
|
||||||
3. Optional: Execute `status-dev-cli watch-dapp . '{"whisper-identity": "dapp-test"}'` to start automatically refreshing your DApp in Status browser when you change the DApp's code.
|
3. Optional: Execute `status-dev-cli watch-dapp . '{"whisper-identity": "dapp-test"}'` to start automatically refreshing your DApp in Status browser when you change the DApp's code.
|
||||||
|
|
||||||
## API
|
|
||||||
|
|
||||||
You can specify a --dapp-port in the case your DApp uses port other than 8080.
|
|
||||||
|
|
||||||
### Adding DApp
|
|
||||||
|
|
||||||
`status-dev-cli add-dapp [dapp]`
|
|
||||||
|
|
||||||
* `dapp` — JSON containing DApp information. It is not required if your DApp contains `package.json` file. Otherwise, this map should contain `whisper-identity`, `dapp-url` and `name` fields (see the example in **Scenario** section)
|
|
||||||
|
|
||||||
### Removing DApp
|
|
||||||
|
|
||||||
`status-dev-cli remove-dapp [dapp]`
|
|
||||||
|
|
||||||
* `dapp` — JSON containing `whisper-identity` field. It is not required if your DApp contains `package.json` file.
|
|
||||||
|
|
||||||
### Watching for DApp changes and refreshing DApp automatically
|
|
||||||
|
|
||||||
`status-dev-cli watch-dapp [dappDir] [dapp]`
|
|
||||||
|
|
||||||
* `dapp_dir` — dir that should be observed. Not required;
|
|
||||||
* `dapp` — JSON containing `whisper-identity` field. It is not required if your DApp contains `package.json` file.
|
|
||||||
|
17
index.js
17
index.js
@ -182,6 +182,23 @@ cli.command("watch-dapp [dappDir] [dapp]")
|
|||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
cli.command("switch-node <url>")
|
||||||
|
.description("Switches the current RPC node")
|
||||||
|
.action(function (url) {
|
||||||
|
request({
|
||||||
|
url: "http://" + (cli.ip || defaultIp) + ":5561/switch-node",
|
||||||
|
method: "POST",
|
||||||
|
json: true,
|
||||||
|
body: {encoded: fromAscii(JSON.stringify({"url": url}))}
|
||||||
|
}, function (error, response, body) {
|
||||||
|
if (error) {
|
||||||
|
printMan();
|
||||||
|
} else {
|
||||||
|
console.log(chalk.green("DApp has been removed succesfully."));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
cli.on("*", function(command) {
|
cli.on("*", function(command) {
|
||||||
console.error("Unknown command " + command[0] + ". See --help for valid commands.")
|
console.error("Unknown command " + command[0] + ". See --help for valid commands.")
|
||||||
});
|
});
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "status-dev-cli",
|
"name": "status-dev-cli",
|
||||||
"version": "2.1.1",
|
"version": "2.2.0",
|
||||||
"description": "CLI for Status",
|
"description": "CLI for Status",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"bin": {
|
"bin": {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user