This is a utility to interact with Visual Studio Online and TFS. It is cross platform and supported on Windows, OSX and Linux.
This app requires NodeJS and npm (included with the NodeJS installer).
sudo npm install -g tfx-cli
Note: Windows does not need sudo
Just type tfx
to see a list of commands.
For help with an individual command, use tfx <command> --help
.
Help info is dynamically generated, so it should always be the most up-to-date authority.
Build Tasks: Create, list, upload and delete your Build Tasks
Marketplace Extensions: Manage your Visual Studio Marketplace Extensions
Builds: Manage your Builds
To avoid providing credentials in every command, you can login once. Currently supported credential types are Personal Access Tokens and basic auth. Create a personal access token and paste it in the login command.
~$ tfx login
Copyright Microsoft Corporation
> Service URL: https://marketplace.visualstudio.com (for extensions) https://youraccount.visualstudio.com/DefaultCollection (other)
> Personal access token:
Logged in successfully
You can alternatively use basic auth by passing --auth-type basic
(read Configuring Basic Auth). NTLM will come soon.
Note: Using this feature will store your login credentials on disk in plain text.
To avoid providing other options in every command, you can save options out to a settings file by adding the --save flag.
~$ tfx build list --project MyProject --definition-name println --top 5 --save
...
id : 1
definition name : TestDefinition
requested by : Teddy Ward
status : NotStarted
queue time : Fri Aug 21 2015 15:07:49 GMT-0400 (Eastern Daylight Time)
~$ tfx build list
Copyright Microsoft Corporation
...
id : 1
definition name : TestDefinition
requested by : Teddy Ward
status : NotStarted
queue time : Fri Aug 21 2015 15:07:49 GMT-0400 (Eastern Daylight Time)
If you used --save to set a default value for an option, you may need to override it by explicitly providing the option with a different value. You can clear any saved settings by running tfx reset
.
To see detailed tracing output, you can set a value for the TFX_TRACE environment value and then run commands. That may offer a clue into the problem. It will certainly help if logging an issue.
Linux/OSX
export TFX_TRACE=1
Windows
set TFX_TRACE=1
PowerShell
$env:TFX_TRACE=1
We take contributions and fixes via Pull Request. Read here for the details.