A command line tool to interact with DigitalOcean.
shark =====
A CLI to interact with digitalocean
Usage
-session $ npm install -g shark $ shark COMMAND running command... $ shark (-v|--version|version) shark/2.3.0 linux-x64 node-v10.9.0 $ shark --help [COMMAND] USAGE $ shark COMMAND ... Commands
shark actions:getshark actions:listshark domainsshark domains:createshark domains:deleteshark domains:listshark droplets:backupsshark droplets:createshark droplets:deleteshark droplets:listshark droplets:passwordshark droplets:powershark droplets:shutdownshark droplets:snapshot- [
shark help [COMMAND]](#shark-help-command) shark projects:createshark projects:listshark records:createshark records:deleteshark records:listshark snapshots:deleteshark snapshots:getshark snapshots:listshark sshkeys:createshark sshkeys:deleteshark sshkeys:getshark sshkeys:listshark token:deleteshark volumes:attachshark volumes:createshark volumes:deleteshark volumes:detachshark volumes:getshark volumes:list
shark actions:get
get details about a specific action
USAGE
$ shark actions:get
OPTIONS -i, --id=id pass the action id --json output in json format
See code: src/commands/actions/get.js_
shark actions:list
List all executed actions
USAGE
$ shark actions:list
OPTIONS -j, --json output in json format -p, --page=page specific page to request -x, --extended show extra columns --columns=columns only show provided columns (comma-seperated) --csv output is csv format --filter=filter filter property by partial string matching, ex: name=foo --no-header hide table header from output --no-truncate do not truncate output to fit screen --sort=sort
See code: src/commands/actions/list.js_
shark domains
perform domain related operations
USAGE
$ shark domains
See code: src/commands/domains/index.js_
shark domains:create
Create a domain in DigitalOcean dns
USAGE
$ shark domains:create
OPTIONS -i, --ip=ip IP address -n, --name=name Domain name --json output in json format
DESCRIPTION Example: $ shark domains:create --name=satyarohith.com --ip=1.1.1.1
See code: src/commands/domains/create.js_
shark domains:delete
Delete domains from DigitalOcean
USAGE
$ shark domains:delete
OPTIONS -n, --name=name domain name
See code: src/commands/domains/delete.js_
shark domains:list
List all domains in your account
USAGE
$ shark domains:list
OPTIONS -j, --json output in json format -p, --page=page specific page to request -x, --extended show extra columns --columns=columns only show provided columns (comma-seperated) --csv output is csv format --filter=filter filter property by partial string matching, ex: name=foo --no-header hide table header from output --no-truncate do not truncate output to fit screen --sort=sort
See code: src/commands/domains/list.js_
shark droplets:backups
enable/disable backups for a droplet
USAGE
$ shark droplets:backups
OPTIONS -d, --disable disable backups -e, --enable enable backups -i, --id=id (required) droplet ID -j, --json output in json format
See code: src/commands/droplets/backups.js_
shark droplets:create
create a droplet
USAGE
$ shark droplets:create
OPTIONS -I, --ipv6 IPv6 public address -P, --no-prompts disable interactive prompts -b, --backups enable automated backups -d, --userdata=userdata user data to upload -i, --image=image (required) operating system to use -j, --json output in json format -k, --sshkeys=sshkeys sshkey IDs to attach to the droplet -m, --monitoring enable droplet monitoring -n, --name=name (required) name of the droplet -p, --private_networking enable private networking -r, --region=region (required) region of the droplet -s, --size=size (required) size of the droplet --tags=tags tags --volumes=volumes volume IDs
See code: src/commands/droplets/create.js_
shark droplets:delete
delete a droplet
USAGE
$ shark droplets:delete
OPTIONS -i, --id=id pass the id of the droplet
DESCRIPTION Examples:
delete a single droplet: shark droplets:delete --id 123456
See code: src/commands/droplets/delete.js_
shark droplets:list
List droplets under your account
USAGE
$ shark droplets:list
OPTIONS -j, --json output in json format -p, --page=page specific page to request -x, --extended show extra columns --columns=columns only show provided columns (comma-seperated) --csv output is csv format --filter=filter filter property by partial string matching, ex: name=foo --no-header hide table header from output --no-truncate do not truncate output to fit screen --sort=sort
See code: src/commands/droplets/list.js_
shark droplets:password
password reset a droplet
USAGE
$ shark droplets:password
OPTIONS -i, --id=id droplet ID -j, --json output in json format
See code: src/commands/droplets/password.js_
shark droplets:power
power on/off/cycle a droplet
USAGE
$ shark droplets:power
OPTIONS -c, --cycle power cycle (off and on) a droplet -f, --off power off droplet -i, --id=id (required) droplet ID -j, --json output in json format -o, --on power on droplet
See code: src/commands/droplets/power.js_
shark droplets:shutdown
shutdown a droplet
USAGE
$ shark droplets:shutdown
OPTIONS -i, --id=id (required) droplet ID -j, --json output in json format
See code: src/commands/droplets/shutdown.js_
shark droplets:snapshot
snapshot a droplet
USAGE
$ shark droplets:snapshot
OPTIONS -i, --id=id droplet ID -j, --json output in json format -n, --name=name give name to the new snapshot
See code: src/commands/droplets/snapshot.js_
shark help [COMMAND]
display help for shark
USAGE
$ shark help [COMMAND]
ARGUMENTS COMMAND command to show help for
OPTIONS --all see all commands in CLI
See code: @oclif/plugin-help_
shark projects:create
create a project
USAGE
$ shark projects:create
OPTIONS -d, --description=description The description of the project. (max 255 char) -e, --environment=environment The environment of the project's resources. (development|staging|production) -n, --name=name The human-readable name for the project. (unique) (max 175 char) -p, --purpose=purpose The description of the project. (max 255 char)
See code: src/commands/projects/create.js_
shark projects:list
list projects under your account
USAGE
$ shark projects:list
OPTIONS -j, --json output in json format -p, --page=page specific page to request -x, --extended show extra columns --columns=columns only show provided columns (comma-seperated) --csv output is csv format --filter=filter filter property by partial string matching, ex: name=foo --no-header hide table header from output --no-truncate do not truncate output to fit screen --sort=sort
See code: src/commands/projects/list.js_
shark records:create
create a domain record
USAGE
$ shark records:create
OPTIONS -D, --domain-name=domain-name The domain name -P, --priority=priority The priority of the host (for SRV and MX records). -T, --ttl=ttl This value is the time to live for the record, in seconds.
-d, --data=data The data for the record. For example, the 'data' for an 'A' record would be the IPv4 Address.
-j, --json output in json format
-n, --name=name The host name, alias, or service being defined by the record.
-p, --port=port The port that the service is accessible on (for SRV records only).
-t, --type=type The type of the record (A, MX, CNAME, etc).
--tag=tag The parameter tag for CAA records. Valid values are "issue", "issuewild", or "iodef"
See code: src/commands/records/create.js_
shark records:delete
delete a domain record
USAGE
$ shark records:delete
OPTIONS -i, --id=id domain record ID -n, --name=name domain name
See code: src/commands/records/delete.js_
shark records:list
list domain records
USAGE
$ shark records:list
OPTIONS -j, --json output in json format -n, --name=name domain name -p, --page=page specific page to request -x, --extended show extra columns --columns=columns only show provided columns (comma-seperated) --csv output is csv format --filter=filter filter property by partial string matching, ex: name=foo --no-header hide table header from output --no-truncate do not truncate output to fit screen --sort=sort
See code: src/commands/records/list.js_
shark snapshots:delete
delete a snapshot
USAGE
$ shark snapshots:delete
OPTIONS -i, --id=id pass the id of the droplet
DESCRIPTION Examples:
delete a snapshot: shark snapshots:delete --id 123456
See code: src/commands/snapshots/delete.js_
shark snapshots:get
get details about a snapshot
USAGE
$ shark snapshots:get
OPTIONS -i, --id=id pass the action id --json output in json format
See code: src/commands/snapshots/get.js_
shark snapshots:list
list all snapshots
USAGE
$ shark snapshots:list
OPTIONS -d, --droplets list all droplet snapshots -j, --json output in json format -p, --page=page specific page to request -v, --volumes list all volumes snapshots -x, --extended show extra columns --columns=columns only show provided columns (comma-seperated) --csv output is csv format --filter=filter filter property by partial string matching, ex: name=foo --no-header hide table header from output --no-truncate do not truncate output to fit screen --sort=sort
See code: src/commands/snapshots/list.js_
shark ssh_keys:create
add new SSH key in your account
USAGE
$ shark ssh_keys:create
OPTIONS -j, --json Output in json format -k, --key=key A string containing the entire public key -n, --name=name The name to give to the new SSH key in your account
See code: src/commands/sshkeys/create.js_
shark ssh_keys:delete
remove ssh_key from your account
USAGE
$ shark ssh_keys:delete
OPTIONS -f, --fingerprint=fingerprint use fingerprint of the key to delete -i, --id=id use id of the key to delete
See code: src/commands/sshkeys/delete.js_
shark ssh_keys:get
get public_key by id/fingerprint
USAGE
$ shark ssh_keys:get
OPTIONS -f, --fingerprint=fingerprint get ssh_key by fingerprint -i, --id=id get ssh_key by id -j, --json output in json format
See code: src/commands/sshkeys/get.js_
shark ssh_keys:list
list all SSH Keys under your account
USAGE
$ shark ssh_keys:list
OPTIONS -j, --json output in json format -p, --page=page specific page to request -t, --tag=tag pass tag name to retrieve keys associated with the tag -x, --extended show extra columns --columns=columns only show provided columns (comma-seperated) --csv output is csv format --filter=filter filter property by partial string matching, ex: name=foo --no-header hide table header from output --no-truncate do not truncate output to fit screen --sort=sort
See code: src/commands/sshkeys/list.js_
shark token:delete
Delete previously set access token
USAGE
$ shark token:delete
See code: src/commands/token/delete.js_
shark volumes:attach
attach a volume to a droplet (action)
USAGE
$ shark volumes:attach
OPTIONS -d, --droplet-id=droplet-id (required) droplet ID -i, --id=id (required) volume ID -j, --json output in json format -r, --region=region region of the volume
See code: src/commands/volumes/attach.js_
shark volumes:create
create a volume
USAGE
$ shark volumes:create
OPTIONS -P, --no-prompts disable interactive prompts -S, --snap-id=snap-id provide snapshot_id to create a volume using the snapshot -d, --desc=desc optional discription -f, --fs-type=fs-type provide filesystem_type to format the volume ("ext4" or "xfs") -j, --json output in json format -l, --fs-label=fs-label The label to be applied to the filesystem -n, --name=name (required) name for the volume -r, --region=region (required) region for the volume ex: blr1 -s, --size=size (required) size of the volume in GiB -t, --tags=tags tags to apply to the volume (new or existing)
See code: src/commands/volumes/create.js_
shark volumes:delete
delete a volume
USAGE
$ shark volumes:delete
OPTIONS -P, --no-prompts disable interactive prompts -i, --id=id id of the volume -j, --json output in json format
See code: src/commands/volumes/delete.js_
shark volumes:detach
detach a volume from a droplet (action)
USAGE
$ shark volumes:detach
OPTIONS -d, --droplet-id=droplet-id (required) droplet ID -i, --id=id (required) volume ID -j, --json output in json format -r, --region=region region of the volume
See code: src/commands/volumes/detach.js_
shark volumes:get
get details of specific volume
USAGE
$ shark volumes:get
OPTIONS -P, --no-prompts disable interactive prompts -i, --id=id id of the volume -j, --json output in json format
See code: src/commands/volumes/get.js_
shark volumes:list
list volumes
USAGE
$ shark volumes:list
OPTIONS -j, --json output in json format -p, --page=page specific page to request -x, --extended show extra columns --columns=columns only show provided columns (comma-seperated) --csv output is csv format --filter=filter filter property by partial string matching, ex: name=foo --no-header hide table header from output --no-truncate do not truncate output to fit screen --sort=sort
See code: src/commands/volumes/list.js_
Contribute
- Fork this project
- Create a new branch related to the bug/feature
- Write tests where necessary
- Open a pull request and be proud
Credits
- Aleafs - For donating npm package name
shark - Packages Contributors
License
MIT ยฉ Satya Rohith