README
gdnsl
gdnsl is Macrometa GDN serverless command line interface (CLI)
Usage
$ npm install -g gdnsl
$ gdnsl COMMAND
running command...
$ gdnsl (--version|-v)
gdnsl/0.0.43 linux-x64 node-v14.18.2
$ gdnsl --help [COMMAND]
USAGE
$ gdnsl COMMAND
...
Commands
gdnsl account
gdnsl apikey
gdnsl apikey clear
gdnsl apikey get
gdnsl apikey set
gdnsl billing account
gdnsl billing contact
gdnsl billing invoice
gdnsl billing payment
gdnsl billing plan
gdnsl billing usage
gdnsl collection create NAME
gdnsl collection delete NAME
gdnsl collection describe NAME
gdnsl collection list
gdnsl collection update NAME
gdnsl configmap create NAME
gdnsl configmap delete NAME
gdnsl configmap describe NAME
gdnsl configmap list
gdnsl configmap update NAME
gdnsl export
gdnsl fabric create NAME
gdnsl fabric delete NAME
gdnsl fabric describe FABRIC
gdnsl fabric list
gdnsl fabric update FABRIC
gdnsl graph create NAME
gdnsl graph delete NAME
gdnsl graph describe NAME
gdnsl graph edge create NAME
gdnsl graph edge delete NAME
gdnsl graph edge describe NAME
gdnsl graph edge list
gdnsl graph edge replace NAME
gdnsl graph edge update NAME
gdnsl graph list
gdnsl graph traversal
gdnsl graph update GRAPHNAME
gdnsl graph vertex create NAME
gdnsl graph vertex delete NAME
gdnsl graph vertex describe NAME
gdnsl graph vertex replace NAME
gdnsl graph vertex update NAME
gdnsl help [COMMAND]
gdnsl import COLLECTION
gdnsl index create NAME
gdnsl index delete NAME INDEX-NAME
gdnsl index describe NAME INDEX-NAME
gdnsl index list NAME
gdnsl init
gdnsl kv create NAME
gdnsl kv delete NAME
gdnsl kv get NAME
gdnsl kv list
gdnsl kv set NAME
gdnsl kv update NAME
gdnsl query [QUERY]
gdnsl query-worker create [QUERYWORKERNAME]
gdnsl query-worker delete QUERYWORKERNAME
gdnsl query-worker describe QUERYWORKERNAME
gdnsl query-worker list
gdnsl query-worker next CURSORID
gdnsl query-worker run [QUERYWORKERNAME]
gdnsl query-worker update [QUERYWORKERNAME]
gdnsl query cursor CURSOR
gdnsl revision delete NAME
gdnsl revision describe NAME
gdnsl revision list
gdnsl route describe NAME
gdnsl route list [NAME]
gdnsl search SEARCHSTRING
gdnsl search analyzer [ANALYZERNAME]
gdnsl secret create docker-registry NAME
gdnsl secret create generic NAME
gdnsl secret delete NAME
gdnsl secret describe NAME
gdnsl secret list
gdnsl secret update NAME
gdnsl service create NAME
gdnsl service delete NAME
gdnsl service describe NAME
gdnsl service list
gdnsl service update NAME
gdnsl status CMDID
gdnsl stream-worker STREAMAPPNAME
gdnsl stream-worker create
gdnsl stream-worker delete STREAMAPPNAME
gdnsl stream-worker describe STREAMAPPNAME
gdnsl stream-worker list
gdnsl stream-worker update
gdnsl streams backlog
gdnsl streams create STREAMNAME
gdnsl streams delete STREAMNAME
gdnsl streams describe STREAMNAME
gdnsl streams expire STREAMNAME
gdnsl streams list
gdnsl streams publish STREAMNAME
gdnsl streams subscription SUBNAME
gdnsl streams ttl
gdnsl user
gdnsl user clear
gdnsl user get
gdnsl user set
gdnsl view create VIEWNAME
gdnsl view delete VIEWNAME
gdnsl view describe VIEWNAME
gdnsl view list
gdnsl view rename VIEWNAME NEWNAME
gdnsl view update VIEWNAME
gdnsl account
Get account details
USAGE
$ gdnsl account [-h] [-c <value>] [--all-regions | --local-region | --limits | --features | --regions |
--plan] [-o json]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help for the account commands.
-o, --output=(json) Output format. Only json is allowed
--all-regions Get account's all regions detail.
--features Get account features detail.
--limits Get account limits detail.
--local-region Get account local region details.
--plan Get account plan details.
--regions Get account regions detail.
DESCRIPTION
Get account details
EXAMPLES
# Return limits of the account
gdnsl account --limits
# Return account plan details
gdnsl account --plan
# Return features enabled for the account
gdnsl account --features
# Return list of regions available for the account
gdnsl account --regions
# Return local region details
gdnsl account --local-region
# Return all available regions of the GDN
gdnsl account --all-regions
See code: dist/commands/account.ts
gdnsl apikey
Validate,create, delete an apikey
USAGE
$ gdnsl apikey [-h] [-c <value>] [--list | --create | --delete | --key-id <value> | --validate <value>]
[-o json]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help for the apikey commands.
-o, --output=(json) Output format. Only json is allowed
--create Create an apikey.
--delete Delete an apikey.
--key-id=<value> the id of the api key.
--list List all the apikeys.
--validate=<value> Validate an apikey.
DESCRIPTION
Validate,create, delete an apikey
EXAMPLES
# List api keys
gdnsl apikey --list
# Get an existing api key, identified by keyid.
gdnsl apikey --key-id testKey
# Validate an apikey.
gdnsl apikey --validate "anurag_macrometa.io.testKey.bpluElGqCbBIlkhDQrVsu4zBB2GxtPb3YCWcNsXSInmn"
# Create an api key.
gdnsl apikey --key-id testKey --create
# Delete api key.
gdnsl apikey --key-id testKey --delete
See code: dist/commands/apikey/index.ts
gdnsl apikey clear
Clear the access level of billing,collection,fabric and streams for a specific key id.
USAGE
$ gdnsl apikey clear [-h] [-c <value>] [--attributes <value> | [--billing ] | [--stream <value> [--fabric
<value> --key-id <value>]] | [--collection <value> ]]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help for the clearing the access level for apikey.
--attributes=<value> Attributes of key-id
--billing Billing access level of the key-id
--collection=<value> Name of the collection for its access level
--fabric=<value> Name of the fabric for its access level
--key-id=<value> the id of the api key.
--stream=<value> Name of the stream for its access level
DESCRIPTION
Clear the access level of billing,collection,fabric and streams for a specific key id.
EXAMPLES
# Clears the stream access level for given stream for api key with keyid.
gdnsl apikey clear --key-id testKey --fabric geoCountry --stream countryStream
# Clears the fabric access level on the persons fabric for the api key with keyid.
gdnsl apikey clear --key-id testKey --fabric persons
# Clears the collection access level for the country collection in fabric geoCountry for the api key with keyid.
gdnsl apikey clear --key-id testKey --fabric geoCountry --collection country
# Clears the billing access level of keyid.
gdnsl apikey clear --key-id testKey --billing
# Delete a specific attribute of keyid.
gdnsl apikey clear --key-id testKey --attributes name
gdnsl apikey get
Get the access level of billing,collection,fabric and streams for a specific key id.
USAGE
$ gdnsl apikey get [-h] [-c <value>] [--stream <value> [--fabric <value> --key-id <value>]] [--collection
<value> ] [--billing ] [--attributes ] [--full ] [--all-streams ] [--all-collections ]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help for the getting access level of the apikey.
--all-collections flag for all the collections access level
--all-streams flag for all the streams access level
--attributes Attributes of key-id
--billing Billing access level of the key-id
--collection=<value> Name of the collection for its access level
--fabric=<value> Name of the fabric for its access level
--full Return the full set of access levels
--key-id=<value> the id of the api key.
--stream=<value> Name of the stream for its access level
DESCRIPTION
Get the access level of billing,collection,fabric and streams for a specific key id.
EXAMPLES
# List the full accessible fabrics, streams and collections for a keyId.
gdnsl apikey get --key-id testKey --full
# List the accessible fabrics for a keyId.
gdnsl apikey get --key-id testKey
# List the accessible streams and collections in a fabric for a keyId.
gdnsl apikey get --key-id testKey --fabric geoCountry
# List all the accessible streams in a fabric for a keyId.
gdnsl apikey get --key-id testKey --fabric geoCity --all-streams
# List all the full accessible streams in a fabric for a keyId.
gdnsl apikey get --key-id testKey --fabric geoCity --all-streams --full
# Return the access level for a specific stream.
gdnsl apikey get --key-id testKey --fabric geocountry --stream countryStream
# Return the access level for all collections.
gdnsl apikey get --key-id testKey --fabric geocountry --all-collections
# Return the full access level for all collections.
gdnsl apikey get --key-id testKey --fabric geocountry --all-collections --full
# Return the access level for a specific collection.
gdnsl apikey get --key-id testKey --fabric geocountry --collection country
# Get the billing access level.
gdnsl apikey get --key-id testKey --billing
# Get the list of attributes for the specified keyid.
gdnsl apikey get --key-id testKey --attributes
gdnsl apikey set
Set the access level of billing,collection,fabric and streams for a specific key id.
USAGE
$ gdnsl apikey set [-h] [-c <value>] [--attributes ] [--param <value> | [--billing ] | [--stream <value>
[--fabric <value> --key-id <value>]] | [--collection <value> ]] [--permissions ro|wo|rw|none ]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help for the apikey commands.
--attributes Attributes of key-id
--billing Billing access level of the key-id
--collection=<value> Name of the collection for its access level
--fabric=<value> Name of the fabric for its access level
--key-id=<value> the id of the api key.
--param=<value>... key/value pairs representing the bind parameters. Can be given multiple times.
--permissions=<option> permission flag for all the streams, collections,fabric and billing. Note: "wo" option is
applicable only to streams.
<options: ro|wo|rw|none>
--stream=<value> Name of the stream for its access level
DESCRIPTION
Set the access level of billing,collection,fabric and streams for a specific key id.
EXAMPLES
# Set the stream access level to publish and subscribe for a specific stream in the database.
gdnsl apikey set --key-id testKey --fabric geoCountry --stream countryStream --permissions rw
# Set the stream access level to subscribe for a specific stream in the database.
gdnsl apikey set --key-id testKey --fabric geoCity --stream cityStream --permissions ro
# Set the stream access level to publish for a specific stream in the database.
gdnsl apikey set --key-id testKey --fabiricName geoState --stream stateStream --permissions wo
# Set the stream access level to No access for a specific stream in the database.
gdnsl apikey set --key-id testKey --fabric geoRegion --stream regionStream --permissions none
# Set the database access level to Administrate for a specific database.
gdnsl apikey set --key-id testKey --fabric persons --permissions rw
# Set the database access level to Access for a specific database.
gdnsl apikey set --key-id testKey --fabric persons --permissions ro
# Set the database access level to No access for a specific database.
gdnsl apikey set --key-id testKey --fabric persons --permissions none
# Set the collection access level to Read/Write for a specific collection in the database.
gdnsl apikey set --key-id testKey --fabric geoCountry --collection country --permissions rw
# Set the collection access level to Read Only for a specific collection in the databas.
gdnsl apikey set --key-id testKey --fabric geoCity --collection city --permissions ro
# Set the collection access level to No access for a specific collection in the database.
gdnsl apikey set --key-id testKey --fabric geoRegion --collection region --permissions none
# Set the billing access level to Administrate.
gdnsl apikey set --billing --key-id testKey --permissions rw
# Set the billing access level to Access.
gdnsl apikey set --billing --key-id testKey --permissions ro
# Set the billing access level to No access.
gdnsl apikey set --billing --key-id testKey --permissions none
# Create/Update the attributes for api key with keyid
gdnsl apikey set --attributes --key-id testKey --param "key1=Value1" --param "key2=Value2"
gdnsl billing account
Get details of a billing account
USAGE
$ gdnsl billing account [-h] [-c <value>]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to get details of a billing account.
DESCRIPTION
Get details of a billing account
EXAMPLES
# Describe a billing account
gdnsl billing account
gdnsl billing contact
Update contact details for given tenant name.
USAGE
$ gdnsl billing contact --firstname <value> --lastname <value> --email <value> --phone <value> --line1 <value>
--line2 <value> --city <value> --state <value> --company <value> --country <value> --zipcode <value> [-h] [-c
<value>]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to update contact details.
--city=<value> (required) City.
--company=<value> (required) Name of the company.
--country=<value> (required) Name of the country.
--email=<value> (required) Email address.
--firstname=<value> (required) First name.
--lastname=<value> (required) Last name.
--line1=<value> (required) Address Line 1.
--line2=<value> (required) Address Line 2.
--phone=<value> (required) Phone number.
--state=<value> (required) State.
--zipcode=<value> (required) Zip code.
DESCRIPTION
Update contact details for given tenant name.
EXAMPLES
# Update billing contact
gdnsl billing contact
--firstname Demo
--lastname Gdn
--email demo@mm.com
--phone 123445657
--line1 l1 --line2 l2
--city Pune
--state Maharashtra
--country India
--zipcode 111222
--company Macrometa
gdnsl billing invoice
Get details of a billing account. (default is current month)
USAGE
$ gdnsl billing invoice [-h] [-c <value>] [--current | --year <value> | --month <value>] [--limit <value> --list]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to get details of a billing account.
--current Get invoice of the tenant for the current month.
--limit=<value> [default: 3] number of previous months
--list list invoices for previous months. Default: 3
--month=<value> Month in 'DD' format. Valid values:[1..12] Example:12 (default is current month).
--year=<value> Year in 'YYYY' format. Example:2021 (default is current year).
DESCRIPTION
Get details of a billing account. (default is current month)
EXAMPLES
# Describe billing invoices for the current month
gdnsl billing invoice
# Describe billing invoice for the year 2021 and 11th month
gdnsl billing invoice --year 2021 --month 11
# Describe billing invoice for the current year and 11th month
gdnsl billing invoice --month 11
# Describe billing invoice for the year 2021 and current month
gdnsl billing invoice --year 2021
# List billing invoices
gdnsl billing invoice --list
# Describe billing invoices for the previous 4 months
gdnsl billing invoice --list --limit 4
gdnsl billing payment
Command for billing payments.
USAGE
$ gdnsl billing payment [-h] [-c <value>] [--limit <value>]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help for billing payments.
--limit=<value> [default: 3] Number of previous months.
DESCRIPTION
Command for billing payments.
EXAMPLES
# Get payment details of the previous months. (default is 3 months)
gdnsl billing payment
# Describe billing payment for the previous 4 months
gdnsl billing payment --limit 4
gdnsl billing plan
List or describe existing billing plans.
USAGE
$ gdnsl billing plan [-h] [-c <value>] [--list] [--name <value>] [-o json]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to list or describe existing billing plans.
-o, --output=(json) Output format. Only json is allowed
--list List existing billing plans.
--name=<value> Name of the billing plan.
DESCRIPTION
List or describe existing billing plans.
EXAMPLES
# Describe billing 'ENTERPRISE' plan
gdnsl billing plan --name ENTERPRISE
# List all billing plans
gdnsl billing plan --list
gdnsl billing usage
Get billing usage of the tenant in specific date range.
USAGE
$ gdnsl billing usage [-h] [-c <value>] [--start-date <value>] [--end-date <value>] [--region <value>]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to get billing usage of the tenant in specific date range.
--end-date=<value> End date in 'YYYY-MM-DD' format. Example: 2020-12-31. (default is today's date)
--region=<value> Name of the region.
--start-date=<value> Start date in 'YYYY-MM-DD' format. Example: 2020-12-01. (default is 1st day of the current
month)
DESCRIPTION
Get billing usage of the tenant in specific date range.
EXAMPLES
# Describe a billing usage starting from 1st day of the current month to till date
gdnsl billing usage
# Describe a billing usage starting from 1st day of the current month to till date for the specified region
gdnsl billing usage --region 'prashant-ap-west'
# Describe a billing usage starting from the specified date to till date
gdnsl billing usage --start-date '2021-10-10'
# Describe a billing usage starting from the specified date to till the specified date
gdnsl billing usage --start-date '2021-05-01' --end-date '2021-10-30'
gdnsl collection create NAME
Create a document or edge collection.
USAGE
$ gdnsl collection create [NAME] [-h] [-c <value>] [--fabric <value>] [--type doc|edge] [--stream] [--local]
[--userkeys --keygen traditional|autoincrement|uuid|padded] [--keyincrement <value> ] [--keyoffset <value> ]
[--system]
FLAGS
-c, --config=<value>
gdnsl config file (default is ./gdnsl.yaml).
-h, --help
Help to create document or edge collection
--fabric=<value>
Name of the fabric. Default will be "_system"
--keygen=<option>
The keygenerator to use by GDN. Values - traditional, autoincrement, uuid and padded. traditional - This key
generator generates numerical keys in ascending order. autoincrement- This key generator generates numerical keys in
ascending order, the initial offset and the spacing can be configured. uuid - This key generator generates
universally unique 128 bit keys, which are stored in hexadecimal human-readable format. The keys are not
lexicographically sorted. padded - This key generator generates keys of a fixed length (16 bytes) in ascending
lexicographical sort order.
<options: traditional|autoincrement|uuid|padded>
--keyincrement=<value>
Increment value for autoincrement key generator. Not used for other key generator types.
--keyoffset=<value>
Initial offset value for autoincrement key generator. Not used for other key generator types.
--local
Specifies whether it is a local collection.
--stream
Enable stream on the collection. Default is false.
--system
Specifies whether it is a system collection. Only mm admins can create system collections.
--type=<option>
[default: doc] Specifies type of the collection. Values - "doc" or "edge". Default - "doc"
<options: doc|edge>
--userkeys
Allow users to specify their own keys.
DESCRIPTION
Create a document or edge collection.
EXAMPLES
# Create a global cities document collection
gdnsl collection create cities --type doc
# Create a global cities edge collection
gdnsl collection create cities --type edge
# Create a global cities document collection and enable collection stream
gdnsl collection create cities --type doc --stream
# Create a local cities document collection and enable collection stream
gdnsl collection create cities --type doc --stream --local
# Create a global cities document collection with custom key generator
gdnsl collection create cities --type doc --keygen traditional --userkeys
gdnsl collection delete NAME
Delete a document or edge collection.
USAGE
$ gdnsl collection delete [NAME] [-h] [-c <value>] [--fabric <value>] [--truncate] [--system]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to delete a document or edge collection
--fabric=<value> Name of the fabric. Default will be "_system"
--system Specifies whether it is a system collection. Only mm admins can create system collections.
--truncate Delete all entries from KV collection
DESCRIPTION
Delete a document or edge collection.
EXAMPLES
# Delete a cities document collection
gdnsl collection delete cities
# Delete a cities edge collection
gdnsl collection delete cities
# Delete a cities edge collection which is a system collection
gdnsl collection delete _cities --system
# Remove all documents from cities collection but leave the indexes intact
gdnsl collection delete cities --truncate
gdnsl collection describe NAME
Get details of a collection
USAGE
$ gdnsl collection describe [NAME] [-h] [-c <value>] [--fabric <value>] [--count]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to get details of a collection
--count To return number of documents in the collection.
--fabric=<value> Name of the fabric. Default will be "_system"
DESCRIPTION
Get details of a collection
EXAMPLES
# Get details of cities collection
gdnsl collection describe cities
# Count documents in cities collection
gdnsl collection describe cities --count
gdnsl collection list
List collections
USAGE
$ gdnsl collection list [-h] [-c <value>] [--fabric <value>] [--system] [-o json]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to list collections
-o, --output=(json) Output format. Only json is allowed
--fabric=<value> Name of the fabric. Default will be "_system"
--system Specifies whether it is a system collection. Only mm admins can create system collections.
DESCRIPTION
List collections
EXAMPLES
# List all collections except system collections
gdnsl collection list
gdnsl collection update NAME
Enable stream on collection.
USAGE
$ gdnsl collection update [NAME] [-h] [-c <value>] [--fabric <value>] [--stream] [--wait-for-sync]
ARGUMENTS
NAME Name of the collection
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to enable stream on collection.
--fabric=<value> Name of the fabric. Default will be "_system"
--[no-]stream Enable / Disable collection stream.
--[no-]wait-for-sync Creating or changing a document will wait until the data has been synchronized to disk.
DESCRIPTION
Enable stream on collection.
EXAMPLES
# Enable stream on collection cities
gdnsl collection update cities --stream
# Disable stream on collection cities
gdnsl collection update cities --no-stream
# Enable waitForSync on collection cities
gdnsl collection update cities --wait-for-sync
# Disable waitForSync on collection cities
gdnsl collection update cities --no-wait-for-sync
# Enable stream and waitForSync on collection cities
gdnsl collection update cities --stream --wait-for-sync
# Disable stream and waitForSync on collection cities
gdnsl collection update cities --no-stream --no-wait-for-sync
gdnsl configmap create NAME
create a configMap from a local file, directory or literal value
USAGE
$ gdnsl configmap create [NAME] [-h] [-r <value>] [-c <value>] [--from-literal <value>] [--file <value>]
FLAGS
-c, --config=<value>
gdnsl config file (default is ./gdnsl.yaml).
-h, --help
Help to create a configmap.
-r, --regions=<value>...
List of region names or keywords (LOCAL or ALL). Overrides the region setting in gdnsl.yml config file.
--file=<value>...
Key files can be specified using their file path,
in which case a default name will be given to them,
or optionally with a name and file path,
in which case the given name will be used.
Specifying a directory will iterate each named file
in the directory that is a valid configmap key.
--from-literal=<value>...
Specify a key and literal value to insert in configmap (i.e. mykey=somevalue)
DESCRIPTION
create a configMap from a local file, directory or literal value
EXAMPLES
# Create a new configmap named my-config with keys for each file in folder bar
gdnsl configmap create my-config --file=path/to/bar
# Create a new configmap named my-config with specified keys instead of names on disk
gdnsl configmap create my-config --file=ssh-privatekey=~/.ssh/id_rsa --file=ssh-publickey=~/.ssh/id_rsa.pub
# Create a new configMap named my-c onfig with key1=config1 and key2=config2
gdnsl configmap create my-config --from-literal=key1=config1 --from-literal=key2=config2
gdnsl configmap delete NAME
delete a configmap
USAGE
$ gdnsl configmap delete [NAME] [-c <value>] [-r <value>] [-h] [-o json|yaml] [-v <value>]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to delete a configmap.
-o, --output=<option> [default: json] Output format. One of: json|yaml
<options: json|yaml>
-r, --regions=<value> List of region names or keywords (LOCAL or ALL). Overrides the region setting in gdnsl.yml
config file.
-v, --verbose=<value> More output.
DESCRIPTION
delete a configmap
EXAMPLES
# Delete configmap 'my-config'
gdnsl configmap delete my-config
gdnsl configmap describe NAME
describe a configmap
USAGE
$ gdnsl configmap describe [NAME] [-c <value>] [-r <value>] [-h] [-o json|yaml] [-v <value>]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to describe a configmap.
-o, --output=(json|yaml) Output format. One of: json|yaml
-r, --regions=<value> List of region names or keywords (LOCAL or ALL). Overrides the region setting in gdnsl.yml
config file.
-v, --verbose=<value> More output.
DESCRIPTION
describe a configmap
EXAMPLES
# Describe details of game-config configmap
gdnsl configmap describe game-config
gdnsl configmap list
list all configmaps
USAGE
$ gdnsl configmap list [-c <value>] [-r <value>] [-h] [-o json|yaml] [-v <value>]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml)
-h, --help Help to list all configmaps.
-o, --output=(json|yaml) Output format. One of: json|yaml
-r, --regions=<value> List of region names or keywords (LOCAL or ALL). Overrides the region setting in gdnsl.yml
config file.
-v, --verbose=<value> More output.
DESCRIPTION
list all configmaps
EXAMPLES
# List all configmaps
gdnsl configmap list
gdnsl configmap update NAME
update a configmap
USAGE
$ gdnsl configmap update [NAME] --from-literal <value> [-h] [-r <value>] [-c <value>]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to update a configmap.
-r, --regions=<value>... List of region names or keywords (LOCAL or ALL). Overrides the region setting in gdnsl.yml
config file.
--from-literal=<value>... (required) Specify a key and literal value to insert in secret (i.e. mykey=somevalue).
DESCRIPTION
update a configmap
gdnsl export
Export data.
USAGE
$ gdnsl export [-h] [-c <value>] [--fabric <value>] [--param <value> [--query <value> | --collection
<value> | --offset <value> | --limit <value> | --order asc|desc]] [--csv | --file <value>]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help help for export command
--collection=<value> Collection name to export data from.
--csv To export in CSV format. Default is JSON.
--fabric=<value> Name of the fabric. Default will be "_system"
--file=<value> path to JSON or CSV file. File format is inferred from the file extension. Note: Only json and
csv extensions are allowed.
--limit=<value> This option can be used to simulate paging. Limit the result. Default: 20, Max: 1000.
--offset=<value> This option can be used to simulate paging. Default: 0.
--order=<option> Order the results asc or desc. Default: asc.
<options: asc|desc>
--param=<value>... Param to be given to the query. Can be given multiple times
--query=<value> Query string to execute and export data
DESCRIPTION
Export data.
EXAMPLES
# Export data returned by the query
gdnsl export --query "FOR doc IN addresses RETURN doc"
# Export data returned by the query with based on the given filter
gdnsl export --query "FOR doc IN addresses FILTER doc.country == @country RETURN doc" --param "country=USA"
# Export data returned by the query in CSV format
gdnsl export --query "FOR doc IN addresses RETURN doc" --csv
# Export data returned by the query in JSON format to a file
gdnsl export --query "FOR doc IN addresses RETURN doc" --file test.json
# Export data from "addresses" collection
gdnsl export --collection addresses
# Export data from "addresses" collection with offset as 10
gdnsl export --collection addresses --offset 10
# Export data from "addresses" collection with limit as 10
gdnsl export --collection addresses --limit 10
# Export data from "addresses" collection in descending order
gdnsl export --collection addresses --order desc
# Export data from "addresses" collection in CSV format
gdnsl export --collection addresses --csv
# Export data from "addresses" collection in CSV format. File format is inferred from the file name
gdnsl export --collection addresses --file test.csv
See code: @gdnsl/plugin-db
gdnsl fabric create NAME
Create a new fabric
USAGE
$ gdnsl fabric create [NAME] --datacenter <value> [-h] [-c <value>] [--spot-datacenter <value>] [--user <value>]
[--metadata <value>]
ARGUMENTS
NAME Fabric name
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to create a fabric
--datacenter=<value>... (required) Name of a Edge Location (datacenter). ie, Edge Location URL prefixes up to
the first "." character.
--metadata=<value>... An optional JSON object with user defined key-value pairs.
--spot-datacenter=<value>... The Edge Location (Datacenter) where on-spot operations for the given fabric will be
performed.
--user=<value>... Username that will have admin access to the new fabric
DESCRIPTION
Create a new fabric
EXAMPLES
# Create demo fabric in the prashant-ap-west data-center
gdnsl fabric create demo --datacenter "prashant-ap-west" --datacenter "prashant-eu-central"
# Create demo fabric in the data-center with metadata
gdnsl fabric create demo --datacenter "prashant-ap-west" --datacenter "prashant-eu-central" --metadata "key=value"
# Create demo fabric in the data-center with spot-datacenter
gdnsl fabric create demo --datacenter "prashant-ap-west" --datacenter "prashant-eu-central" --spot-datacenter prashant-us-east
# Create demo fabric in the data-center with a user
gdnsl fabric create demo --datacenter "prashant-ap-west" --datacenter "prashant-eu-central" --user admin
# Create demo fabric with 2 metadata objects
gdnsl fabric create demo --datacenter "prashant-ap-west" --datacenter "prashant-eu-central" --metadata "key1=value1" --metadata "key2=value2"
gdnsl fabric delete NAME
Delete a fabric.
USAGE
$ gdnsl fabric delete [NAME] [-h] [-c <value>]
ARGUMENTS
NAME Fabric name
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to delete a fabric.
DESCRIPTION
Delete a fabric.
EXAMPLES
# Delete demo fabric
gdnsl fabric delete demo
gdnsl fabric describe FABRIC
Get details of a fabric.
USAGE
$ gdnsl fabric describe [FABRIC] [-h] [-c <value>]
ARGUMENTS
FABRIC Fabric name
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to get details of a fabric.
DESCRIPTION
Get details of a fabric.
EXAMPLES
# Describe demo fabric
gdnsl fabric describe demo
gdnsl fabric list
Retrieve the list of all existing fabrics.
USAGE
$ gdnsl fabric list [-h] [-c <value>] [--all] [-o json]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to list all fabrics.
-o, --output=(json) Output format. Only json is allowed
--all List of all fabrics.
DESCRIPTION
Retrieve the list of all existing fabrics.
EXAMPLES
# List fabrics from the server and returns an array of their names
gdnsl fabric list
# List all fabrics accessible to the active user from the server and returns an array of their names
gdnsl fabric list --all
gdnsl fabric update FABRIC
Update a fabric.
USAGE
$ gdnsl fabric update [FABRIC] [-h] [-c <value>] [--metadata <value>]
ARGUMENTS
FABRIC Fabric name
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to update a fabric.
--metadata=<value>... An optional JSON object with user defined key-value pairs.
DESCRIPTION
Update a fabric.
EXAMPLES
# Update demo fabric metadata with 2 metadata objects
gdnsl fabric update demo --metadata "key1=test1" --metadata "key2=test2"
gdnsl graph create NAME
Create a graph.
USAGE
$ gdnsl graph create [NAME] [-h] [-c <value>] [--fabric <value>] [--edge-definition <value>] [--option <value>]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value>
gdnsl config file (default is ./gdnsl.yaml).
-h, --help
Help to create a graph
--edge-definition=<value>...
Specify the edge definition of the graph. This edge definition has to contain a collection and an array of each from
and to vertex collections. An edge definition can only be added if this definition is either not used in any other
graph, or it is used with exactly the same definition. It is not possible to store a definition "e" from "v1" to
"v2" in the one graph, and "e" from "v2" to "v1" in the other graph. Can be given multiple times.
--fabric=<value>
Name of the fabric. Default will be "_system"
--option=<value>
Specify any additional options to be given. Can be given multiple times.
DESCRIPTION
Create a graph.
EXAMPLES
# Create a graph "social"
gdnsl graph create social
# The edge-definition format is "EDGE_COLLECTION:FROM_VERTICES:TO_VERTICES". Create a graph "social" with edge collection "relation", "from" vertex as "female" & "male" and "to" vertex as "female" & "male"
gdnsl graph create social --edge-definition "relation:female,male:female,male"
# The edge-definition format is "EDGE_COLLECTION:FROM_VERTICES:TO_VERTICES". Create a graph "social" with edge collection "relation", "from" vertex as "female" & "male" and "to" vertex as "female" & "male" with additional options specified
gdnsl graph create social --edge-definition "relation:female,male:female,male" --option "key=value"
gdnsl graph delete NAME
Delete a graph
USAGE
$ gdnsl graph delete [NAME] [-h] [-c <value>] [--fabric <value>] [--drop-collections]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to delete a graph
--drop-collections Drop the collection as well. Collection will only be dropped if it is not used in other graphs.
Default is false.
--fabric=<value> Name of the fabric. Default will be "_system"
DESCRIPTION
Delete a graph
EXAMPLES
# Drop the graph "social"
gdnsl graph delete social
# Drop the graph "social" and any collections if they are not used in other graphs
gdnsl graph delete social --drop-collections
gdnsl graph describe NAME
Describe a graph
USAGE
$ gdnsl graph describe [NAME] [-h] [-c <value>] [--fabric <value>] [--edge-definitions] [--vertex]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to describe a graph
--edge-definitions Get all the edge definitions of a graph.
--fabric=<value> Name of the fabric. Default will be "_system"
--vertex Get all the vertex collections of a graph.
DESCRIPTION
Describe a graph
EXAMPLES
# Describe the graph "social"
gdnsl graph describe social
# Describe all edge definitions of the graph "social"
gdnsl graph describe social --edge-definitions
# Describe all vertex collections of the graph "social"
gdnsl graph describe social --vertex
gdnsl graph edge create NAME
Create an edge.
USAGE
$ gdnsl graph edge create [NAME] --from <value> --to <value> --collection <value> [-h] [-c <value>] [--fabric
<value>] [--return-new]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to create an edge
--collection=<value> (required) The name of the edge collection the edge belongs to.
--fabric=<value> Name of the fabric. Default will be "_system"
--from=<value> (required) The source vertex of this edge. Has to be valid within the used edge definition.
--return-new Define if the response should contain the complete new version of the document.
--to=<value> (required) The target vertex of this edge. Has to be valid within the used edge definition.
DESCRIPTION
Create an edge.
EXAMPLES
# Create an edge in the "social" graph in "relation" edge-collection from "male/John" to "female/Doe"
gdnsl graph edge create social --collection relation --from "male/John" --to "female/Doe"
# Create an edge in the "social" graph in "relation" edge-collection from "male/John" to "female/Doe" and return the new version of the document
gdnsl graph edge create social --collection relation --from "male/John" --to "female/Doe" --return-new
gdnsl graph edge delete NAME
Remove an edge from the collection.
USAGE
$ gdnsl graph edge delete [NAME] --collection <value> --edge <value> [-h] [-c <value>] [--fabric <value>]
[--return-old] [--if-match <value>]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to delete an edge
--collection=<value> (required) The name of the edge collection the edge belongs to.
--edge=<value> (required) The _key attribute of the edge.
--fabric=<value> Name of the fabric. Default will be "_system"
--if-match=<value> If the "If-Match" header is given, then it must contain exactly one Etag. The document is
updated, if it has the same revision as the given Etag. Otherwise a HTTP 412 is returned
--return-old Define if a presentation of the deleted document should be returned within the response object.
Default is false
DESCRIPTION
Remove an edge from the collection.
EXAMPLES
# delete an edge in the "social" graph in "relation" edge-collection having edge _id attribute as "MwPFf8dgSH-bxeNxuPh6bw"
gdnsl graph edge delete social --collection relation --edge "MwPFf8dgSH-bxeNxuPh6bw"
# delete an edge in the "social" graph in "relation" edge-collection _id attribute as "MwPFf8dgSH-bxeNxuPh6bw" and return the new version of the document
gdnsl graph edge delete social --collection relation --edge "MwPFf8dgSH-bxeNxuPh6bw"
gdnsl graph edge describe NAME
Describe an edge.
USAGE
$ gdnsl graph edge describe [NAME] --collection <value> --edge <value> [-h] [-c <value>] [--fabric <value>] [--rev
<value>] [--if-match <value>] [--if-none-match <value>]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to describe a graph
--collection=<value> (required) he name of the vertex collection the vertex belongs to.
--edge=<value> (required) The _key attribute of the edge.
--fabric=<value> Name of the fabric. Default will be "_system"
--if-match=<value> If the "If-Match" header is given, then it must contain exactly one Etag. The document is
returned, if it has the same revision as the given Etag. Otherwise a HTTP 412 is returned. As
an alternative you can supply the Etag in an query parameter rev.
--if-none-match=<value> If the "If-None-Match" header is given, then it must contain exactly one Etag. The document
is returned, only if it has a different revision as the given Etag. Otherwise a HTTP 304 is
returned.
--rev=<value> Must contain a revision. If this is set a document is only returned if it has exactly this
revision. Also see if-match header as an alternative to this. Default is false.
DESCRIPTION
Describe an edge.
EXAMPLES
# Describe the edge with the _key as "1w44RO8kQMG3kB0feiua1g" in the collection "relation"
gdnsl graph edge describe social --collection relation --edge 1w44RO8kQMG3kB0feiua1g
gdnsl graph edge list
List edges starting or ending in the vertex.
USAGE
$ gdnsl graph edge list --vertex-id <value> --collection <value> [-h] [-c <value>] [--fabric <value>] [--direction
in|out]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to create a graph
--collection=<value> (required) The id of the collection.
--direction=<option> Selects "in" or "out" direction for edges. If not set, any edges are returned.
<options: in|out>
--fabric=<value> Name of the fabric. Default will be "_system"
--vertex-id=<value> (required) The id of the start vertex.
DESCRIPTION
List edges starting or ending in the vertex.
EXAMPLES
# Get the edges from the "relation" collection from any direction in the vertex "female/alice"
gdnsl graph edge list --collection relation --vertex-id "female/alice"
# Get the edges from the "relation" collection from "in" direction in the vertex "female/alice"
gdnsl graph edge list --collection relation --vertex-id "female/alice" --direction "in"
gdnsl graph edge replace NAME
Replaces the data of an edge in the collection.
USAGE
$ gdnsl graph edge replace [NAME] --collection <value> --data <value> --edge <value> [-h] [-c <value>] [--fabric
<value>]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to update a graph
--collection=<value> (required) The name of the edge collection the edge belongs to.
--data=<value> (required) json string of the data to be stored
--edge=<value> (required) The _key attribute of the edge.
--fabric=<value> Name of the fabric. Default will be "_system"
DESCRIPTION
Replaces the data of an edge in the collection.
EXAMPLES
# Replace the edge with the _key as "1w44RO8kQMG3kB0feiua1g" in the collection "relation" in the graph "social"
gdnsl graph edge replace social --collection relation --edge 1w44RO8kQMG3kB0feiua1g --data '{"name": "John", "lname": "Doe"}'
gdnsl graph edge update NAME
Update an edge.
USAGE
$ gdnsl graph edge update [NAME] --collection <value> --edge <value> --data <value> [-h] [-c <value>] [--fabric
<value>] [--keep-null] [--return-old] [--return-new] [--if-match <value>]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to update an edge
--collection=<value> (required) The name of the edge collection the edge belongs to.
--data=<value> (required) JSON body as string.
--edge=<value> (required) The _key attribute of the edge.
--fabric=<value> Name of the fabric. Default will be "_system"
--if-match=<value> If the "If-Match" header is given, then it must contain exactly one Etag. The document is
updated, if it has the same revision as the given Etag. Otherwise a HTTP 412 is returned
--keep-null Define if values set to null should be stored. By default the key is not removed from the
document. Default is true.
--return-new Define if a presentation of the new document should be returned within the response object.
Default is true.
--return-old Define if a presentation of the deleted document should be returned within the response object.
Default is false.
DESCRIPTION
Update an edge.
EXAMPLES
# Replace the edge with the _key as "1w44RO8kQMG3kB0feiua1g" in the collection "relation" in the graph "social"
gdnsl graph edge update social --collection relation --edge 1w44RO8kQMG3kB0feiua1g --data '{"fname":"John"}'
gdnsl graph list
List graphs
USAGE
$ gdnsl graph list [-h] [-c <value>] [--fabric <value>] [-o json]
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to list graphs
-o, --output=(json) Output format. Only json is allowed
--fabric=<value> Name of the fabric. Default will be "_system"
DESCRIPTION
List graphs
EXAMPLES
# List all graphs
gdnsl graph list
gdnsl graph traversal
Traverse a graph.
USAGE
$ gdnsl graph traversal --edge-collection <value> --start-vertex <value> [-h] [-c <value>] [--fabric <value>]
[--direction outbound|inbound|any] [--expander <value>] [--filter <value>] [--init <value>] [--item-order
forward|backward] [--max-depth <value>] [--max-iterations <value>] [--min-depth <value>] [--order
preorder|postorder|preorder-expander] [--sort <value>] [--strategy depthfirst|breadthfirst] [--uniqueness-vertices
none|global|path --uniqueness-edges none|global|path] [--visitor <value>]
FLAGS
-c, --config=<value>
gdnsl config file (default is ./gdnsl.yaml).
-h, --help
Help to traverse a graph.
--direction=<option>
Direction for traversal. If set, must be either "outbound", "inbound", or "any"; if not set, the expander attribute
must be specified.
<options: outbound|inbound|any>
--edge-collection=<value>
(required) Name of the collection that contains the edges.
--expander=<value>
Body (JavaScript) code of custom expander function must be set if direction attribute is not set function signature:
(config, vertex, path) -> array expander must return an array of the connections for vertex each connection is an
object with the attributes edge and vertex
--fabric=<value>
Name of the fabric. Default will be "_system"
--filter=<value>
Default is to include all nodes: body (JavaScript code) of custom filter function function signature: (config,
vertex, path) -> mixed can return four different string values:
"exclude" -> this vertex will not be visited.
"prune" -> the edges of this vertex will not be followed.
"" or undefined -> visit the vertex and follow its edges.
Array -> containing any combination of the above. If there is at least one "exclude" or "prune" respectively is
contained, it's effect will occur.
--init=<value>
Body (JavaScript) code of custom result initialization function function signature: (config, result) -> void
initialize any values in result with what is required.
--item-order=<option>
Item iteration order can be "forward" or "backward".
<options: forward|backward>
--max-depth=<value>
ANDed with any existing filters visits only nodes in at most the given depth.
--max-iterations=<value>
Maximum number of iterations in each traversal. This number can be set to prevent endless loops in traversal of
cyclic graphs. When a traversal performs as many iterations as the maxIterations value, the traversal will abort
with an error. If maxIterations is not set, a server-defined value may be used.
--min-depth=<value>
ANDed with any existing filters): visits only nodes in at least the given depth.
--order=<option>
Traversal order can be "preorder", "postorder" or "preorder-expander".
<options: preorder|postorder|preorder-expander>
--sort=<value>
Body (JavaScript) code of a custom comparison function for the edges. The signature of this function is (l, r) ->
integer (where l and r are edges) and must return -1 if l is smaller than, +1 if l is greater than, and 0 if l and r
are equal. The reason for this is the following: The order of edges returned for a certain vertex is undefined. This
is because there is no natural order of edges for a vertex with multiple connected edges. To explicitly define the
order in which edges on the vertex are followed, you can specify an edge comparator function with this attribute.
Note that the value here has to be a string to conform to the JSON standard, which in turn is parsed as function
body on the server side. Furthermore note that this attribute is only used for the standard expanders. If you use
your custom expander you have to do the sorting yourself within the expander code.
--start-vertex=<value>
(required) Id of the startVertex, e.g. "users/foo".
--strategy=<option>
Traversal strategy can be "depthfirst" or "breadthfirst".
<options: depthfirst|breadthfirst>
--uniqueness-edges=<option>
Specifies uniqueness for edges visited. If set "uniqueness-vertices" must also be provided. Valid value is one of
"none"|"global"|"path".
<options: none|global|path>
--uniqueness-vertices=<option>
Specifies uniqueness for vertices visited. If set "uniqueness-edges" must also be provided. Valid value is one of
"none"|"global"|"path".
<options: none|global|path>
--visitor=<value>
Body (JavaScript) code of custom visitor function function signature: (config, result, vertex, path, connected) ->
void The visitor function can do anything, but its return value is ignored. To populate a result, use the result
variable by reference. Note that the connected argument is only populated when the order attribute is set to
"preorder-expander".
DESCRIPTION
Traverse a graph.
EXAMPLES
# Traverse a graph.
gdnsl graph traversal --edge-collection edges --start-vertex "circles/F" --direction 'any' --visitor 'result.vertices.push(vertex._key);' --init 'result.vertices = [];' --order postorder
gdnsl graph update GRAPHNAME
Update a graph.
USAGE
$ gdnsl graph update [GRAPHNAME] [-h] [-c <value>] [--fabric <value>] [--stream | [--add-edge-definition <value>
| --add-vertex-collection <value> | --remove-vertex-collection <value> | --replace-edge-definition <value> |
--remove-edge-collection <value>] | | | | | --drop-collection | --collection <value>] [--wait-for-sync | | |
| | | | ]
ARGUMENTS
GRAPHNAME Name of the graph.
FLAGS
-c, --config=<value>
gdnsl config file (default is ./gdnsl.yaml).
-h, --help
Help to update a graph
--add-edge-definition=<value>...
specify the edge definition of the graph. This edge definition has to contain a collection and an array of each from
and to vertex collections. An edge definition can only be added if this definition is either not used in any other
graph, or it is used with exactly the same definition. It is not possible to store a definition "e" from "v1" to
"v2" in the one graph, and "e" from "v2" to "v1" in the other graph.
--add-vertex-collection=<value>
Adds a vertex collection to the set of orphan collections of the graph. If the collection does not exist, it will be
created.
--collection=<value>
The name of the edge collection the edge belongs to. Should be used with "--replace-edge-definition" flag.
--drop-collection
Drop the collection as well. Collection will only be dropped if it is not used in other graphs. Default value is
false.
--fabric=<value>
Name of the fabric. Default will be "_system"
--remove-edge-collection=<value>
Remove one edge definition from the graph. This will only remove the edge collection, the vertex collections remain
untouched and can still be used in your queries.
--remove-vertex-collection=<value>
The name of the edge collection the edge belongs to. Removes a vertex collection from the graph and optionally
deletes the collection, if it is not used in any other graph. It can only remove vertex collections that are no
longer part of edge definitions, if they are used in edge definitions you are required to modify those first.
--replace-edge-definition=<value>...
Specify the edge definition of the graph. This edge definition has to contain a collection and an array of each from
and to vertex collections. An edge definition can only be added if this definition is either not used in any other
graph, or it is used with exactly the same definition. It is not possible to store a definition "e" from "v1" to
"v2" in the one graph, and "e" from "v2" to "v1" in the other graph.
--[no-]stream
Enable / Disable kv collection stream.
--[no-]wait-for-sync
Creating or changing a document will wait until the data has been synchronized to disk.
DESCRIPTION
Update a graph.
EXAMPLES
# The edge-definition format is "EDGE_COLLECTION:FROM_VERTICES:TO_VERTICES". Add an edge-definition to the graph "social" for the edge collection "relation", set "from" vertex as "female" & "male" and set "to" vertex as "female" & "male"
gdnsl graph update social --add-edge-definition "relation:female,male:female,male"
# Add a vertex collection "age" to the graph "social"'s orphan collections
gdnsl graph update social --add-vertex-collection "age"
# Remove "age" vertex collection from graph "social"
gdnsl graph update social --remove-vertex-collection "age"
# Remove the edge definitions belonging to the "relation" edge collection
gdnsl graph update social --remove-edge-collection "relation"
# The edge-definition format is "EDGE_COLLECTION:FROM_VERTICES:TO_VERTICES". Replace an edge-definition of the graph "social" for the edge collection "relation", set "from" vertices as "female" & "male", and set "to" vertices as "female" & "male".
gdnsl graph update social --collection relation --replace-edge-definition "relation:female,male:female,male"
# Replace a vertex collection "age" to the graph "social"'s orphan collections and drop the collection if it is not being used
gdnsl graph update social --collection relation --replace-edge-definition "relation:female,male:female,male" --drop-collections
# Enable stream on graph collection social
gdnsl graph update social --stream
# Disable stream on graph collection social
gdnsl graph update social --no-stream
# Enable waitForSync on graph collection social
gdnsl graph update social --wait-for-sync
# Disable waitForSync on graph collection social
gdnsl graph update social --no-wait-for-sync
# Enable stream and waitForSync on graph collection social
gdnsl graph update social --stream --wait-for-sync
# Disable stream and waitForSync on graph collection social
gdnsl graph update social --no-stream --no-wait-for-sync
gdnsl graph vertex create NAME
Create a vertex.
USAGE
$ gdnsl graph vertex create [NAME] --collection <value> [-h] [-c <value>] [--fabric <value>] [--return-new] [--data
<value>]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to create a vertex
--collection=<value> (required) The name of the vertex collection the vertex belongs to.
--data=<value> JSON string of the data to be stored
--fabric=<value> Name of the fabric. Default will be "_system"
--return-new Define if the response should contain the complete new version of the document.
DESCRIPTION
Create a vertex.
EXAMPLES
# Create a vertex in the graph "social" with the vertex collection as "male"
gdnsl graph vertex create social --collection male --data '{"name": "John"}'
gdnsl graph vertex delete NAME
Delete a vertex.
USAGE
$ gdnsl graph vertex delete [NAME] --collection <value> --vertex <value> [-h] [-c <value>] [--fabric <value>]
[--return-old] [--if-match <value>]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to delete a vertex
--collection=<value> (required) The name of the vertex collection the vertex belongs to.
--fabric=<value> Name of the fabric. Default will be "_system"
--if-match=<value> If the "If-Match" header is given, then it must contain exactly one Etag. The document is
updated, if it has the same revision as the given Etag. Otherwise a HTTP 412 is returned.
--return-old Define if a presentation of the deleted document should be returned within the response object.
Default is false.
--vertex=<value> (required) The _key attribute of the vertex.
DESCRIPTION
Delete a vertex.
EXAMPLES
# Delete a vertex in the graph "social" with the vertex collection as "male" having _key as "John"
gdnsl graph vertex delete social --collection male --vertex "John"
# Delete a vertex in the graph "social" with the vertex collection as "male" having _key as "John" and return the old object
gdnsl graph vertex delete social --collection male --vertex "John" --return-old
gdnsl graph vertex describe NAME
Describe a vertex
USAGE
$ gdnsl graph vertex describe [NAME] --collection <value> --vertex <value> [-h] [-c <value>] [--fabric <value>] [--rev
<value>] [--if-match <value>] [--if-none-match <value>]
ARGUMENTS
NAME Name of the graph.
FLAGS
-c, --config=<value> gdnsl config file (default is ./gdnsl.yaml).
-h, --help Help to describe a vertex
--collection=<value> (required) The name of the vertex collection the vertex belongs to.
--fabric=<value> Name of the fabric. Default will b