Chapter 3. Command-line tools

Table of Contents
Basics
Everyday commands
Maintenance commands

Basics

Yaktrack is composed of a set of commands which "nest" into each other to form a sort of hierarchy. At any time, if you enter invalid data, Yaktrack will give you some sort of response -- either a menu of possible commands, or usage text on the command you requested. For example, the user may invoke the yaktrack.py command without any arguments for the following:

[vputz@yak_prime temp]$ ../yaktrack.py
Main yaktrack application

Usage:
This is the main (base) yaktrack application.  From here, you should choose one
of the subcommands available, and execute it.

Possible Subcommands
cat                  Lists the full text of a desired issue
submit               Submits an issue
is-valid-template    Ensures an issue template is valid for use with yaktrack
query                Queries the repository to find desired issues
edit                 Edits an issue with an external or internal editor
file                 Files a new issue
create-repository    Creates a repository in the current directory
register-template    Registers a new template (issue type)

Adding any of the other commands, for example, nets you more usage information; here, the user wants to know more about listing a desired issue:

[vputz@yak_prime temp]$ ../yaktrack.py cat
Not enough arguments for cat -- need template name and ids!
Usage:
yaktrack cat template-name issue-id [issue-id...]

Copies the text of the listed issues to standard output.  Useful
for checking the existence of a file.  Cannot be used to list
issues awaiting review.

The command line components to Yaktrack allow you to perform any of the standard Yaktrack functions and allow full access to the repository. While provisions have been made for Yaktrack to use configuration management, not all of that functionality is in place for the initial release, so be advised that changes will be permanent. Luckily, it's difficult to damage a repository beyond repair unless you muck about with the files directly. For this reason, we strongly discourage you from hand-editing any file in the repository; use the yaktrack edit command to edit existing issues, and you should never edit templates, particularly after you have submitted reports using them (in fact, Yaktrack will not let you register templates more than once!)