= Treasure Data command line tool
{}[https://travis-ci.org/treasure-data/td]
{}[https://ci.appveyor.com/project/treasure-data/td/branch/master]
{}[https://coveralls.io/github/treasure-data/td?branch=master]
This CUI utility wraps the {Ruby Client Library td-client-ruby}[https://github.com/treasure-data/td-client-ruby]
to interact with the REST API in managing databases and jobs on the Treasure Data Cloud.
For more info about Treasure Data, see .
For full documentation see .
= Getting Started
Install td command as a gem.
> gem install td
See help message for details.
> td
You need to authorize the account, before executing any other commands.
> td account
= Sample Workflow
> td account -f # authorize an account
user: k@treasure-data.com
password: **********
> td database:create mydb # create a database
> td table:create mydb www_access # create a table
= Packaging
== Mac OS X
Disable RVM or rbenv and use ruby.pkg's ruby (/usr/local/td/ruby/bin/ruby).
And then run following commands:
$ /usr/local/td/ruby/bin/gem install bundler rubyzip
$ /usr/local/td/ruby/bin/bundle install
$ /usr/local/td/ruby/bin/rake pkg:build
It uses https://github.com/treasure-data/ruby-osx-packager
== Windows
Install following binary packages:
* MinGW with MSYS Basic System and using mingw-get-inst
* Git for Windows, with Windows Command Prompt support
* Ruby ruby-1.9.3p327 using RubyInstaller for Windows, with PATH update
* Inno Setup 5
Then run following commands on MinGW Shell:
$ mingw-get install msys-vim
$ mingw-get install msys-wget
$ gem install bundler rubyzip
$ bundle install # don't use "--path" option
$ rake exe:build # don't use "bundle exec"
== Bulk Import
Some of the +td+ commands prefixed with +td+ +import+ leverages the {Java Bulk Import CLI td-import-java}[https://github.com/treasure-data/td-import-java]
to process and Bulk load data in the Treasure Data Cloud.
The Bulk Import CLI is downloaded automatically at the first call to any of the command that require it; the use will
need internet connectivity in order to fetch the Bulk Import CLI JAR file from the
{Central Maven repository}[http://central.maven.org/maven2/com/treasuredata/td-import/]
and take advantage of these advanced features. If you need to setup a proxy, please consult this
{documentation}[https://support.treasuredata.com/hc/en-us/articles/360001502527-Legacy-Bulk-Import-Tips-and-Tricks#How%20to%20use%20a%20proxy%20server] page.
The log levels and properties of the Bulk Import CLI can be configured in a +logging.properties+ file. A default
configuration is provided in a file within the gem or Toolbelt folder root, in the +java/+ folder. If you wish to
customize it, please make a copy of this file and store it in the:
~/.td/java folder on Mac OSX or Linux
%USERPROFILE%\.td\java folder on Windows
== Testing Hooks
The CLI implements several hooks to enable/disable/trigger special behaviors.
These hooks are expressed as environment variables and can therefore be provided in several ways:
=== How to Use
* Unix / Linux / MacOSX
* environment variable export in the shell the command is executed. The setting remains active until the shell is closed. E.g.:
$ export TD_TOOLBELT_DEBUG=1
* in the shell configuration file, to be active in any new shell that is opened. E.g.: add
export TD_TOOLBELT_DEBUG=1
to ~/.bashrc or equivalent shell configuration file.
To make the setting active in the current shell, source the configuration file, e.g.:
$ source ~/.bashrc
* on the command line at runtime (active only for the duration of the command). E.g.:
$ TD_TOOLBELT_DEBUG=1 td ....
* as alias on in the current shell. The setting remains active until the shell is closed. E.g.:
$ alias td='TD_TOOLBELT_DEBUG=1 td'
* as alias in configuration file, to be active in any new shell that is opened. E.g.:
alias td='TD_TOOLBELT_DEBUG=1 td'`
to ~/.bashrc or equivalent shell configuration file.
To make the setting active in the current shell, source the configuration file, e.g.:
$ source ~/.bashrc
* Windows
* in the command prompt the command is executed. The setting remains active until the command prompt window is closed. E.g.:
cmd> set TD_TOOLBELT_DEBUG=1
* as a global environment variable in the system settings. It will be active for all new command prompt windows.
These are the available hooks:
* Enable debugging mode:
$ TD_TOOLBELT_DEBUG=1
* JAR auto update (enabled by default is not specified). This setting does not affect import:jar_update:
* Enable:
$ TD_TOOLBELT_JAR_UPDATE=1
* Disable:
$ TD_TOOLBELT_JAR_UPDATE=0
* Specify an alternative endpoint to use updating the toolbelt (default: http://toolbelt.treasuredata.com):
$ TD_TOOLBELT_UPDATE_ROOT="http://toolbelt.treasuredata.com"
* Specify an alternative endpoint to use updating the JAR file (default: http://central.maven.org):
$ TD_TOOLBELT_JARUPDATE_ROOT="http://central.maven.org"
= Copyright
Copyright:: Copyright (c) 2015 Treasure Data Inc.
License:: Apache License, Version 2.0