Skip to main content

Command line interface for Exosite Murano.

Project description

# Exosite Murano Command Line Tool (exosite cli)

The tool will upload all resources described in the Solutionfile.json to a solution in your business account. This includes static assets, endpoint definitons, event handlers and modules.

## Requirements

- python 2.7 or later

```
sudo pip install --upgrade exosite
```

If you are running OS X El Capitan, the following may be necessary:

```
sudo pip install --upgrade exosite --ignore-installed six --ignore-installed prompt-toolkit --ignore-installed requests
```


## Usage:
This command will prompt you to input credential data and save it to file '.Solutionfile.secret' for latter use.
```
exosite --init
```

This command will perform upload, the target script/file will be read from config file 'Solutionfile.json'
```
exosite --deploy
```

#### Usage:

usage: exosite [-h] [--host [HOST]] [-k] [-p] [-s] [-a] [-e] [-m] [--deploy] [--init] [-v]

#### Arguments:
```
-h, --help show this help message and exit
--host [HOST]
-k, --insecrue Ignore SSL
-p, --upload_productid
Upload static file
-s, --upload_static Upload static file
-a, --upload_api Upload api
-e, --upload_eventhandler
Upload event handler
-m, --upload_modules Upload modules
-c, --update_cors Update cors configuration
--enable_identity <identity> Add identity
--delete_identity <identity> Delete identity
--logs [tail] Script log information
--read <identity> <alias> Read data from resource
--write <identity> <alias> <value>
Write data to resource
--tree Listing resources
--watch Watch for modified files and deploy automatically
--open [product|solution]
Open solution/product url in browser
--deploy Upload all solution configurations
--init Configure for credential parameters
-v, --version Show Version number

```
#### Solutionfile.json format:
```
{
"version": "0.2",
"default_page": "index.html",
"file_dir": "public",
"custom_api": "sample_api.lua",
"custom_api_hook": "_init",
"product_spec": {
"lightbulb": "lightbulb.yaml"
},
"modules": {
"auth": "modules/util.lua",
"debug": "modules/debug.lua"
},
"event_handler": {
"device": {
"datapoint": "event_handler/product.lua"
},
"timer": {
"timer": "event_handler/timer.lua"
}
}
}
{
"version": "0.3",
"default_page": "index.html",
"assets": "public",
"routes": "sample_api.lua",
"routes_hook": "_init",
"modules": {
"auth": "modules/util.lua",
"debug": "modules/debug.lua"
},
"services": {
"device": {
"datapoint": "event_handler/product.lua"
},
"timer": {
"timer": "event_handler/timer.lua"
}
}
"cors": {
"origin": ["http://localhost:*"],
"methods": ["get", "post"],
"headers": ["accept", "content-type", "authorization"],
"expose_headers": ["X-Key"],
"credentials": true
}
}
```

#### Custom API file format:

```
--#ENDPOINT <METHOD> <PATH>
SCRIPT_CODE
```

where `--#ENDPOINT <METHOD> <PATH>` is also separator between endpoint definitions, for example:

```
--#ENDPOINT GET /keystore/{value}
return Keystore.get({key = request.parameters.value})
--#ENDPOINT POST /user/{email}/lightbulbs
return User.listUserRoleParamValues({
id = request.user_id,
role_id = "lightbulb_owner",
parameter_name = "serialnumber"
})
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

exosite-0.28.tar.gz (14.0 kB view details)

Uploaded Source

File details

Details for the file exosite-0.28.tar.gz.

File metadata

  • Download URL: exosite-0.28.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for exosite-0.28.tar.gz
Algorithm Hash digest
SHA256 f81967411d00cc788022a0f33cd2cf716958800d931649a0cef0f16bbb8dfe04
MD5 ecce51e73bb269b89123cd83f08ddbd9
BLAKE2b-256 5d656f7fae402e5aa14df037b9a5ed49cc79b810e1bcea08ea98f4087ddbc935

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page