TracAdmin

Trac is distributed with a powerful command-line configuration tool. This tool can be used to configure and customize your Trac-installation to better fit your needs.

Some of those operations can also be performed via the Admin web interface, an updated version of the WebAdmin plugin now integrated within Trac (since version 0.11).

Usage

You can get a comprehensive list of the available options, commands and sub-commands by invoking trac-admin with the help command:.

trac-admin help

Unless you're executing the help, about or version sub-commands, you'll need to specify the path to the TracEnvironment that you want to administer as the first argument, for example:

trac-admin /path/to/projenv wiki list

Interactive Mode

When passing the environment path as the only argument, trac-admin starts in interactive mode. Commands can then be executed on the selected environment using the prompt, which offers tab-completion (on non-Windows environments, and when the Python readline module is available) and automatic repetition of the last command issued.

Once you're in interactive mode, you can also get help on specific commands or subsets of commands:

For example, to get an explanation of the resync command, run:

> help resync

To get help on all the Wiki-related commands, run:

> help wiki

Full Command Reference

help 

    Show documentation

initenv [<projectname> <db> <repostype> <repospath>]

    Create and initialize a new environment

    If no arguments are given, then the required parameters are requested
    interactively.

    An optional argument --inherit can be used to specify the "[inherit] file"
    option at environment creation time so that only the options not already
    specified in the global configuration file are written to the conf/trac.ini
    file of the newly created environment.

component add <name> <owner>

    Add a new component

component chown <name> <owner>

    Change component ownership

component list 

    Show available components

component remove <name>

    Remove/uninstall a component

component rename <name> <newname>

    Rename a component

config get <section> <option>

    Get the value of the given option in "trac.ini"

config remove <section> <option>

    Remove the specified option from "trac.ini"

config set <section> <option> <value>

    Set the value for the given option in "trac.ini"

deploy <directory>

    Extract static resources from Trac and all plugins

hotcopy <backupdir>

    Make a hot backup copy of an environment

milestone add <name> [due]

    Add milestone

milestone completed <name> <completed>

    Set milestone complete date

    The <completed> date must be specified in the "YYYY-MM-DD" format.
    Alternatively, "now" can be used to set the completion date to the current
    time. To remove the completion date from a milestone, specify an empty
    string ("").

milestone due <name> <due>

    Set milestone due date

    The <due> date must be specified in the "YYYY-MM-DD" format. Alternatively,
    "now" can be used to set the due date to the current time. To remove the
    due date from a milestone, specify an empty string ("").

milestone list 

    Show milestones

milestone remove <name>

    Remove milestone

milestone rename <name> <newname>

    Rename milestone

permission add <user> <action> [action] [...]

    Add a new permission rule

permission list [user]

    List permission rules

permission remove <user> <action> [action] [...]

    Remove a permission rule

priority add <value>

    Add a priority value option

priority change <value> <newvalue>

    Change a priority value

priority list 

    Show possible ticket priorities

priority order <value> up|down

    Move a priority value up or down in the list

priority remove <value>

    Remove a priority value

resolution add <value>

    Add a resolution value option

resolution change <value> <newvalue>

    Change a resolution value

resolution list 

    Show possible ticket resolutions

resolution order <value> up|down

    Move a resolution value up or down in the list

resolution remove <value>

    Remove a resolution value

resync [rev]

    Re-synchronize trac with the repository

    When [rev] is specified, only that revision is synchronized. Otherwise, the
    complete revision history is synchronized. Note that this operation can
    take a long time to complete.

severity add <value>

    Add a severity value option

severity change <value> <newvalue>

    Change a severity value

severity list 

    Show possible ticket severities

severity order <value> up|down

    Move a severity value up or down in the list

severity remove <value>

    Remove a severity value

ticket remove <number>

    Remove ticket

ticket_type add <value>

    Add a ticket type

ticket_type change <value> <newvalue>

    Change a ticket type

ticket_type list 

    Show possible ticket types

ticket_type order <value> up|down

    Move a ticket type up or down in the list

ticket_type remove <value>

    Remove a ticket type

upgrade 

    Upgrade database to current version

version add <name> [time]

    Add version

version list 

    Show versions

version remove <name>

    Remove version

version rename <name> <newname>

    Rename version

version time <name> <time>

    Set version date

    The <time> must be specified in the "YYYY-MM-DD" format. Alternatively,
    "now" can be used to set the version date to the current time. To remove
    the date from a version, specify an empty string ("").

wiki dump <directory>

    Export all wiki pages to files named by title

wiki export <page> [file]

    Export wiki page to file or stdout

wiki import <page> [file]

    Import wiki page from file or stdin

wiki list 

    List wiki pages

wiki load <directory>

    Import all wiki pages from directory

wiki remove <page>

    Remove wiki page

wiki upgrade 

    Upgrade default wiki pages to current version

Notes

The initenv also supports an extra --inherit option, which can be used to specify the [inherit] file option at environment creation time so that only the options not already specified in the global configuration file will be written in the conf/trac.ini file of the newly created environment. See TracIni#GlobalConfiguration.

Note that in version 0.11 of Trac, initenv lost an extra last argument <templatepath>, which was used in previous versions to point to the templates folder. If you are using the one-liner 'trac-admin /path/to/trac/ initenv <projectname> <db> <repostype> <repospath>' in the above and getting an error that reads 'Wrong number of arguments to initenv: 4', then this is because you're using a trac-admin script from an older version of Trac.


See also: TracGuide, TracBackup, TracPermissions, TracEnvironment, TracIni, TracMigrate