Skip to content

StudentESE/t2-cli

 
 

Repository files navigation

t2-cli

The starting point for the Tessel 2 command line interface.

Join the conversation on Slack, our project's chat client!

Slack

Travis-CI Build Status Appveyor Build status

See docs on T2 CLI usage on the t2-docs repo.

Contents

Installation for development

Prerequisites for installation: Node.js and Git.

  1. Clone this repository by entering the following: git clone https://github.com/tessel/t2-cli.
  2. Go to the root directory of repository: cd t2-cli.
  3. Create a symbolic link: npm link --local.

####Windows You may encounter the following error when executing npm link on windows:

19798 error Windows_NT 6.3.9600
19799 error argv "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "link"
19800 error node v0.12.4
19801 error npm  v2.10.1
19802 error code ELIFECYCLE
19803 error tessel@0.3.23 postinstall: `tessel install-drivers || true; tessel trademark || true`
19803 error Exit status 1
19804 error Failed at the tessel@0.3.23 postinstall script 'tessel install-drivers || true; tessel trademark || true'.

This error occurs because of windows folder permissions. To resolve this make sure you are running cmd or powershell as an administrator and that the permissions on the node_modules folder is set to full control for the user.

####Source Tab Completion For bash users, add this line to your ~/.bashrc or ~/.bash_profile file:

source /PATH/TO/t2-cli/bash_completion

For zsh users, add these lines to your ~/.zshrc file:

# Add custom completion scripts
fpath=(/PATH/TO/t2-cli $fpath)

# compsys initialization
autoload -U compinit
compinit

Updating

Just run t2 update to make sure you are running the most recent build of OpenWRT and firmware.

Development Milestones

Help us build Tessel 2's CLI! The issues section of this repo is full of small, fully outlined projects to add functionality.

The table here outlines the major milestones for the CLI prior to general release. Feel free to contribute towards milestones that that aren't the highest priority or bugs not on that list! All contributions are welcome.

Releasing

For all releases, a maintainer will complete the following steps:

  1. Update the version, commit it, and tag it (all of these things happen with the following command):
npm version [<newversion> | major | minor | patch]

Where <newversion> is either "major", "minor" or "patch" (currently, we are in pre-1.0 "patch" releases). More than likely, you will type npm version patch.

  1. git push --tags (or git push remote-name --tags, where remote-name is the name of your remote that points to git@github.com:tessel/t2-cli.git)

  2. grunt changelog will produce a pre-formatted changelog that looks something like this:

| Commit | Message/Description |
| ------ | ------------------- |
| sha    | we fixed stuff      |

Copy the table to clipboard

  1. Open https://github.com/tessel/t2-cli/releases and click Edit on the right hand side of the "Latest Release":

Type the tag name into the "Release title" field:

Paste the changelog into the "Describe this release" field:

When complete it will look something like this:

About

Command line interface to Tessel 2.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 98.7%
  • Shell 1.3%