The starting point for the Tessel 2 command line interface.
Join the conversation on Slack, our project's chat client!
See docs on T2 CLI usage on the t2-docs repo.
Prerequisites for installation: Node.js and Git.
- Clone this repository by entering the following:
git clone https://github.com/tessel/t2-cli
. - Go to the root directory of repository:
cd t2-cli
. - 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
Just run t2 update
to make sure you are running the most recent build of OpenWRT and firmware.
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.
For all releases, a maintainer will complete the following steps:
- 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
.
-
git push --tags
(orgit push remote-name --tags
, whereremote-name
is the name of your remote that points togit@github.com:tessel/t2-cli.git
) -
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
- 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: