Giter VIP home page Giter VIP logo

doctl's Introduction

doctl

The doctl mascot.

Build Status GoDoc Go Report Card

doctl is a command-line interface (CLI) for the DigitalOcean API.

Usage:
  doctl [command]

Available Commands:
  1-click         Display commands that pertain to 1-click applications
  account         Display commands that retrieve account details
  apps            Display commands for working with apps
  auth            Display commands for authenticating doctl with an account
  balance         Display commands for retrieving your account balance
  billing-history Display commands for retrieving your billing history
  completion      Modify your shell so doctl commands autocomplete with TAB
  compute         Display commands that manage infrastructure
  databases       Display commands that manage databases
  help            Help about any command
  invoice         Display commands for retrieving invoices for your account
  kubernetes      Displays commands to manage Kubernetes clusters and configurations
  monitoring      [Beta] Display commands to manage monitoring
  projects        Manage projects and assign resources to them
  registry        Display commands for working with container registries
  version         Show the current version
  vpcs            Display commands that manage VPCs

Flags:
  -t, --access-token string   API V2 access token
  -u, --api-url string        Override default API endpoint
  -c, --config string         Specify a custom config file (default "$HOME/.config/doctl/config.yaml")
      --context string        Specify a custom authentication context name
  -h, --help                  help for doctl
  -o, --output string         Desired output format [text|json] (default "text")
      --trace                 Show a log of network activity while performing a command
  -v, --verbose               Enable verbose output

Use "doctl [command] --help" for more information about a command.

See the full reference documentation for information about each available command.

Installing doctl

Using a Package Manager (Preferred)

A package manager allows you to install and keep up with new doctl versions using only a few commands. Our community distributes doctl via a growing set of package managers in addition to the officially supported set listed below; chances are good a solution exists for your platform.

MacOS

Use Homebrew to install doctl on macOS:

brew install doctl

doctl is also available via MacPorts. Note that the port is community maintained and may not be on the latest version.

Snap supported OS

Use Snap on Snap-supported systems to install doctl:

sudo snap install doctl
Use with kubectl

Using kubectl requires the kube-config personal-files connection for doctl:

sudo snap connect doctl:kube-config
Using doctl compute ssh

Using doctl compute ssh requires the core ssh-keys interface:

sudo snap connect doctl:ssh-keys :ssh-keys
Use with Docker

Using doctl registry login requires the dot-docker personal-files connection for doctl:

sudo snap connect doctl:dot-docker

This allows doctl to add DigitalOcean container registry credentials to your Docker configuration file.

Arch Linux

doctl is available in the official Arch Linux repository:

sudo pacman -S doctl

Fedora

doctl is available in the official Fedora repository:

sudo dnf install doctl

Nix supported OS

Users of NixOS or other supported platforms may install doctl from Nixpkgs. Please note this package is also community maintained and may not be on the latest version.

Docker Hub

Containers for each release are available under the digitalocean organization on Docker Hub. Links to the containers are available in the GitHub releases.

Downloading a Release from GitHub

Visit the Releases page for the doctl GitHub project, and find the appropriate archive for your operating system and architecture. Download the archive from your browser or copy its URL and retrieve it to your home directory with wget or curl.

For example, with wget:

cd ~
wget https://github.com/digitalocean/doctl/releases/download/v<version>/doctl-<version>-linux-amd64.tar.gz

Or with curl:

cd ~
curl -OL https://github.com/digitalocean/doctl/releases/download/v<version>/doctl-<version>-linux-amd64.tar.gz

Extract the binary:

tar xf ~/doctl-<version>-linux-amd64.tar.gz

Or download and extract with this oneliner:

curl -sL https://github.com/digitalocean/doctl/releases/download/v<version>/doctl-<version>-linux-amd64.tar.gz | tar -xzv

where <version> is the full semantic version, e.g., 1.17.0.

On Windows systems, you should be able to double-click the zip archive to extract the doctl executable.

Move the doctl binary to somewhere in your path. For example, on GNU/Linux and OS X systems:

sudo mv ~/doctl /usr/local/bin

Windows users can follow How to: Add Tool Locations to the PATH Environment Variable in order to add doctl to their PATH.

Building with Docker

If you have Docker configured, you can build a local Docker image using doctl's Dockerfile and run doctl within a container.

docker build --tag=doctl .

Then you can run it within a container.

docker run --rm --interactive --tty --env=DIGITALOCEAN_ACCESS_TOKEN="your_DO_token" doctl any_doctl_command

Building the Development Version from Source

If you have a Go environment configured, you can install the development version of doctl from the command line.

go install github.com/digitalocean/doctl/cmd/doctl@latest

While the development version is a good way to take a peek at doctl's latest features before they get released, be aware that it may have bugs. Officially released versions will generally be more stable.

Dependencies

doctl uses Go modules with vendoring.

Authenticating with DigitalOcean

To use doctl, you need to authenticate with DigitalOcean by providing an access token, which can be created from the Applications & API section of the Control Panel. You can learn how to generate a token by following the DigitalOcean API guide.

Docker users will have to use the DIGITALOCEAN_ACCESS_TOKEN environmental variable to authenticate, as explained in the Installation section of this document.

If you're not using Docker to run doctl, authenticate with the auth init command.

doctl auth init

You will be prompted to enter the DigitalOcean access token that you generated in the DigitalOcean control panel.

DigitalOcean access token: your_DO_token

After entering your token, you will receive confirmation that the credentials were accepted. If the token doesn't validate, make sure you copied and pasted it correctly.

Validating token: OK

This will create the necessary directory structure and configuration file to store your credentials.

Logging into multiple DigitalOcean accounts

doctl allows you to log in to multiple DigitalOcean accounts at the same time and easily switch between them with the use of authentication contexts.

By default, a context named default is used. To create a new context, run doctl auth init --context <new-context-name>. You may also pass the new context's name using the DIGITALOCEAN_CONTEXT environment variable. You will be prompted for your API access token which will be associated with the new context.

To use a non-default context, pass the context name to any doctl command. For example:

doctl compute droplet list --context <new-context-name>

To set a new default context, run doctl auth switch --context <new-context-name>. This command will save the current context to the config file and use it for all commands by default if a context is not specified.

The --access-token flag or DIGITALOCEAN_ACCESS_TOKEN environment variable are acknowledged only if the default context is used. Otherwise, they will have no effect on what API access token is used. To temporarily override the access token if a different context is set as default, use doctl --context default --access-token your_DO_token ....

Configuring Default Values

The doctl configuration file is used to store your API Access Token as well as the defaults for command flags. If you find yourself using certain flags frequently, you can change their default values to avoid typing them every time. This can be useful when, for example, you want to change the username or port used for SSH.

On OS X, doctl saves its configuration as ${HOME}/Library/Application Support/doctl/config.yaml. The ${HOME}/Library/Application Support/doctl/ directory will be created once you run doctl auth init.

On Linux, doctl saves its configuration as ${XDG_CONFIG_HOME}/doctl/config.yaml if the ${XDG_CONFIG_HOME} environmental variable is set, or ~/.config/doctl/config.yaml if it is not. On Windows, the config file location is %APPDATA%\doctl\config.yaml.

The configuration file is automatically created and populated with default properties when you authenticate with doctl for the first time. The typical format for a property is category.command.sub-command.flag: value. For example, the property for the force flag with tag deletion is tag.delete.force.

To change the default SSH user used when connecting to a Droplet with doctl, look for the compute.ssh.ssh-user property and change the value after the colon. In this example, we changed it to the username sammy.

. . .
compute.ssh.ssh-user: sammy
. . .

Save and close the file. The next time you use doctl, the new default values you set will be in effect. In this example, that means that it will SSH as the sammy user (instead of the default root user) next time you log into a Droplet.

Environment variables

In addition to specifying configuration using config.yaml file or program arguments, it is also possible to override values just for the given session with environment variables:

# Use instead of --context argument
DIGITALOCEAN_CONTEXT=my-context doctl auth list
# Use instead of --access-token argument
DIGITALOCEAN_ACCESS_TOKEN=my-do-token doctl

Enabling Shell Auto-Completion

doctl also has auto-completion support. It can be set up so that if you partially type a command and then press TAB, the rest of the command is automatically filled in. For example, if you type doctl comp<TAB><TAB> drop<TAB><TAB> with auto-completion enabled, you'll see doctl compute droplet appear on your command prompt.

Note: Shell auto-completion is not available for Windows users.

How you enable auto-completion depends on which operating system you're using. If you installed doctl via Homebrew, auto-completion is activated automatically, though you may need to configure your local environment to enable it.

doctl can generate an auto-completion script with the doctl completion your_shell_here command. Valid arguments for the shell are Bash (bash), ZSH (zsh), and fish (fish). By default, the script will be printed to the command line output. For more usage examples for the completion command, use doctl completion --help.

Linux Auto Completion

The most common way to use the completion command is by adding a line to your local profile configuration. At the end of your ~/.profile file, add this line:

source <(doctl completion your_shell_here)

If you are using ZSH, add this line to your ~/.zshrc file:

compdef _doctl doctl

Then refresh your profile.

source ~/.profile

MacOS (bash)

macOS users will have to install the bash-completion framework to use the auto-completion feature.

brew install bash-completion

After it's installed, load bash_completion by adding the following line to your .profile or .bashrc file.

source $(brew --prefix)/etc/bash_completion

Then refresh your profile using the appropriate command for the bash configurations file.

source ~/.profile
source ~/.bashrc

MacOS (zsh)

Add the following line to your ~/.zshrc file:

autoload -U +X compinit; compinit

Then refresh your profile.

Uninstalling doctl

Using a Package Manager

MacOS Uninstall

Use Homebrew to uninstall all current and previous versions of the doctl formula on macOS:

brew uninstall -f doctl

To completely remove the configuration, also remove the following directory:

rm -rf "$HOME/Library/Application Support/doctl"

Examples

doctl is able to interact with all of your DigitalOcean resources. Below are a few common usage examples. To learn more about the features available, see the full tutorial on the DigitalOcean community site.

  • List all Droplets on your account:
doctl compute droplet list
  • Create a Droplet:
doctl compute droplet create <name> --region <region-slug> --image <image-slug> --size <size-slug>
  • Assign a Floating IP to a Droplet:
doctl compute floating-ip-action assign <ip-addr> <droplet-id>
  • Create a new A record for an existing domain:
doctl compute domain records create --record-type A --record-name www --record-data <ip-addr> <domain-name>

doctl also simplifies actions without an API endpoint. For instance, it allows you to SSH to your Droplet by name:

doctl compute ssh <droplet-name>

By default, it assumes you are using the root user. If you want to SSH as a specific user, you can do that as well:

doctl compute ssh <user>@<droplet-name>

Tutorials

doctl's People

Contributors

adamwg avatar alexandear avatar andrewsomething avatar aybabtme avatar bentranter avatar bouk avatar bryanl avatar chiefmatestarbuck avatar danaelhe avatar dbrian57 avatar dependabot[bot] avatar hilary avatar johndmulhausen avatar joshuaauerbachwatson avatar kamaln7 avatar mauricio avatar mchitten avatar mgibson323 avatar nanzhong avatar nicktate avatar phillbaker avatar scotchneat avatar slantview avatar sunny-b avatar timoreimann avatar verolop avatar victoravelar avatar viola avatar xmudrii avatar zachgersh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

doctl's Issues

git-style aliases

What

Allow git-style aliases for commands.

Why

Some commands are more frequently used than others by users, so allowing people to alias them to their convenience will provide a more ergonomic experience.

How

Possible impl:

  • Add the aliases definitions to the config file.
  • Before starting the cobra stuff, expand the os.Args according to the aliases.

Windows SSH client agent support

Doctl uses a custom ssh client because it can't assume there is a ssh executable in the path. In order to be more friendly, there should exist support for SSH agents.

Using Doctl to rebuild a droplet

I ran doctl compute droplet list to get a droplet_id for our droplets.

One of our droplets has droplet_id 12018347.

I then ran doctl compute image list to get the image_id for the Ubuntu 14.04.4 x64 image. According to this command, the image with slug "ubuntu-14-04-x64" has the image_id 15943679.

However, when I run doctl compute droplet-action rebuild 12018347 --image-id 15943679, doctl returns the following error:

"POST https://api.digitalocean.com/v2/droplets/12018347/actions: 422 Image can't be blank"

Is this image really blank, or this is this a problem with the API? If there is another image_id that refers to a "non-blank" Ubuntu 14.04.4 x64 image, how would I find it? Is doctl compute image list not the right way?

Add a way to see private IP of the machine

I have a scenario, when I need to generate SSL certificates for a bunch of machines in the cluster. It would be nice if the output of doctl compute droplet [create|list] included the private ip (provided --enable-private-networking was issued).

Right now I have to manually ssh (since doctl compute ssh doesn't seem to take commands) into the box and run scripts to get that information, which is really inconvenient.

address droplets by name

currently every action (shutdown, snapshot etc) needs the ID as parameter. this is not very practical for scripting things like this. Will it be possible to give these actions the Name of the droplet as parameter?

shutdown_and_update.sh

#!/bin/sh
doctl compute droplet-action shutdown my.droplet.com
doctl compute droplet-action snapshot my.droplet.com
 --snapshot-name my.droplet.com

restore_and_wakeup.sh

#!/bin/sh
doctl compute droplet create my.droplet.com   --size 8gb  --image my.droplet.com --region nyc1
doctl compute droplet-action power-on my.droplet.com

doctl compute droplet find

please add command: doctl compute droplet find ABCD

To find matching droplet with partial name or ip or tags

What broke Jim?

Receive follow problem

$ doctl auth login
login to DigitalOcean account

Usage:
  doctl auth login [flags]

Flags:
  -h, --help   help for login

Global Flags:
  -t, --access-token string   DigitalOcean API V2 Access Token
  -o, --output string         output formt [text|json] (default "text")
      --trace                 verbose output
  -v, --verbose               verbose output

Error: it's broke, Jim

What wrong? And I am is not Jim ;) How to determine my name in confg ;)

Tag droplet returns 404 error

Running the command:
doctl compute droplet tag <droplet-name or droplet-id> --tag-name mytag

returns the error message:
Error: POST https://api.digitalocean.com/v2/tags/testing/resources: 404 The resource you were accessing could not be found.

`doctl compute images list` does not include slug.

[~]# doctl compute image list
ID      Name                            Type        Distribution    Slug        Public  Min Disk
79909       Rails-3.2.12-Nginx-MySQL                snapshot    Ubuntu              false   20
13271590    FreeBSD 10.2 Raw                    snapshot    FreeBSD             false   20
15836396    packer-1455685225                   snapshot    Ubuntu              false   40
15836558    packer-1455685874                   snapshot    Ubuntu              false   40
15836632    packer-1455686129                   snapshot    Ubuntu              false   40
308121      WordPress on Ubuntu 12.10               snapshot    Ubuntu              false   20
385625      WordPress on Ubuntu 12.10               snapshot    Ubuntu              false   20
415651      WordPress on Ubuntu 12.10               snapshot    Ubuntu              false   20


--ssh-port option ignored

My droplets use a non-standard port for ssh. So I tried this:
doctl compute ssh <my_droplet> --ssh-user <my_user> --ssh-port 1234

But I get ssh: connect to host <droplet_ip> port 22: Connection refused
Error: 255

Software Version
doctl v1.0.0
OS OSX El Capitan 10.11.4 (15E65)
Shell iTerm 2 (2.1.4)

Btw, thank you all for this awesome tool!!

Add template support to customize outputs

Using Go templates, expose the raw response to the end user, so outputs can be customized. As an example, if you retrieve a droplet with doctl compute droplet get 1234, you could retrieve the droplet creation time with `doctl compute droplet get 1234 --template ".CreatedAt".

Add a FreeBSD release

I would like to make a FreeBSD port for the doctl tool.

It would be much easier to pull the release build from github rather than building it from source.

Would it be possible to add a FreeBSD release?

droplet delete name disambiguation

If you have multiple droplets with the same name, e.g. "ubuntu-2gb-nyc3-01", and issue a droplet delete command, doctl deletes the oldest one.

doctl compute droplet delete ubuntu-2gb-nyc3-01

This should be documented, or there should be a disambiguation or confirmation prompt.

Bash Completion

Feature request: We need bash completion...

doctl should show compute, account, auth ...

support for inline repl/shell?

Would it be possible to have something equivalent to a shell for this tool? I find myself typing doctl compute droplet <action> a lot, and it'd be nice if I could do something like cd compute/droplet or cd compute and then just droplet <action> or droplet-action <action> directly.

Can't login on windows

Just tried installing the client after the twitter post was announce and wanted to login, however the client isn't being so nice about it. 1.0 Releases eh?

Anyway when attempting to login, it seems that the client is ignoring all the argument flags and not actually running the auth flow (or at least clearly stating what it does)
image 2016-03-30 at 4 48 01 pm

Also it seems to spin up my browser to an attempted auth page but all that prints is unknown client.

Goob job on a 1.0 attempt though guys, looking forward it working nicer :P

SSH Agent Forwarding

First and foremost, this tool is great and it makes my work a lot easier! Thank you!

One of the things I use quite often is SSH agent forwarding (ssh -A user@server) for example for deployment tasks. I wonder if it would be possible to add this functionality to the doctl compute ssh <droplet-name> command?

plain "go get" doesn't work on the repository

$ go get github.com/digitalocean/doctl/cmd/doctl doesn't work out of the box:

$ go get github.com/digitalocean/doctl/cmd/doctl
# cd /home/user/mygo/src/github.com/digitalocean/doctl; git submodule update --init --recursive
fatal: no submodule mapping found in .gitmodules for path 'vendor/github.com/inconshreveable/mousetrap'
package github.com/digitalocean/doctl/cmd/doctl: exit status 128

DS

doctl didn't create $HOME/.doctlcfg file

No sure why, but ran the following command after installing doctl using Homebrew (Mac OS, El Capitan, v10.11.5).

doctl auth login -t (my token)

Output: updated access token

But no .doctlcfg file was created in $HOME.

Allow jsonpath traversals through doctl output

Add a jsonpath option to allow easy retrieval of specific data from a doctl response. Example:

doctl compute get 1234 --jsonpath "Networks.V4" would return the IPv4 networks block from the JSON response. JSON output is assumed with the jsonpath option.

Cannot run binary

I followed the installation steps of option 2.

Running doctl results in this error message: zsh: exec format error: doctl

I'm on the latest version of OSX.

How can this be fixed?

No .doctlconfig format specified

Hello,

Please clarify file format of .doctlconfig in documentation.
Now it look like JSON but not quote a string on another source like issue it look like:

key1: value1
key2: value2

Please describe format or/and provide information about reading parameters in debug or verbose mode.

SSH Client doesn't work on Windows

It happens on current master (a57555c), when trying to connect to a droplet from Windows 10 in VirtualBox.

There are 2 different problems:

1/ When trying to connect with a SSH key that isn't password protected, the error is:

doctl.exe compute ssh playground --ssh-key-path D:\ssh-tmp-keys\id_rsa_without_password
Error: read /dev/stdout: The handle is invalid.

The problem is that this line is using os.Stdout while it should be using os.Stdin.

There's also a logical error here, we check for the function scoped err before starting the shell, but it can be non-nil because of this line.

2/ When trying to connect with a SSH key that is password protected, the error is:

doctl.exe compute ssh playground --ssh-key-path D:\ssh-tmp-keys\id_rsa_with_password
Error: asn1: structure error: tags don't match (16 vs {class:1 tag:6 length:50 isCompound:false}) {optional:false explicit:false application:false defaultValue:<nil> tag:<nil> stringType:0 timeType:0 set:false omitEmpty:false} pkcs1PrivateKey @2

The problem is that ssh.ParsePrivateKey(key) on this line expects a PEM encoded private key so we have to decrypt it first.

The SSH keys used to reproduce this issue have been generated using:
ssh-keygen -t rsa -b 4096 -C "[email protected]"

One key has a passphrase, the other doesn't. They are attached here:
ssh-test-keys.tar.gz

Plesee describe in README.md more detail about compile from source

Alternatively, if you have a Go environment configured, you can install the development
version of doctl from the command line like so:
go get github.com/digitalocean/doctl

I type doctl after this and have no success. I will doing additional shell steps?
Please clarify you REAMDE.md with this steps.

Thanx.

--user-data-file not used?

Created a droplet with the --user-data-file argument with a local file containing a few lines of shell code, which normally works when used from the control panel. The data doesn't seem to be used.

doctl should support a config file

Currently the doctl command line tool supports retrieving auth from env vars, but I would prefer to store these in a dot file in my home directory.

`doctl auth login` doesn't work on Mac

Contrary to the tutorial here, doctl auth login only returns Error: access token is required, if there's no config file, and doesn't pop open a browser tab.

There is no instruction given in that tutorial as to what key name to use in the config; I randomly guessed access-token, which worked.

[Suggestion] notify/callback option when --wait omitted

This is probably not specific for doctl itself, but also the API.
I think it could be useful if you start creating a droplet, and don't want to wait until it's finished, if you could have it notify you by e-mail once it's done creating, or maybe a callback URL?

I'm part of a new startup company located in Denmark, where we're already using Digital Ocean for some of our servers, we do plan to use this for our customers also, although (would be sweet with a Digital Ocean presence in Denmark :)) and as part of a more or less automated deployment is where I think a callback URL option could be useful, it would probably be required to implement this into the API also.

Multiple Missing Things for 'change-kernel' Action

The --format option is missing for the change-kernel action using the following command:

doctl compute droplet-action change-kernel <droplet-id>

This option exists for other similar droplet-action such as power-off.

I was updating my mass kernel updater script to use doctl instead of curl and came across this issue.

EDIT:
It also appears the --no-header option is missing too.

EDIT 2:
It appears that it does not list all kernels too. My assumption would be the paging in the DigitalOcean API.

Replace `doctl auth login` with `doctl auth init`

The doctl auth login process has a few issues that doesn't allow it to work the same way on every platform. I'm proposing we replace this with a doctl auth init that will take a DO token on the command line and do the initial configuration which will include creating a doctl config file.

Ephemeral Access Token

After authenticating using: doctl auth login --access-token {string}

The doctl auth login doesn't' work.

you still get:

Error: access token is required

when trying to run doctl compute droplet list or most of the commands.

To list, you have to use:

doctl compute droplet list --region nyc3 --output json --access-token

That's not ideal if you have to use the token each time.

Installed via Homebrew

SSH user argument ignored

I would like to use a different user to ssh into my droplet, but I also use a different ssh key, my line is:

doctl compute ssh <my_droplet> --ssh-key-path <mykey> --ssh-user <my_user>

but the connection made to the droplet uses root instead of my username. Also any kind of arguments after --ssh-key-path are being ignored, like -v or --trace.

Software Version
doctl v1.1.0
OS OSX Yosemite 10.10.5 (14F1713)
Terminal iTerm 2 (2.1.4)
Shell zsh

auth login does not open a new browser tab

Is anyone else finding that typing doctl auth login does not open a new browser window but outputs the usage and the error:

Error: access token is required

โ€ฆ well I thought that was what this command was suppose to figure out for me!?

I'm running OS X 10.11.4 โ€” zsh shell and Safari is my primary browser if it helps.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.