rt-crontool - Man Page
a tool to act on tickets from an external scheduling tool
Synopsis
# find all active tickets in the queue 'general' and set their priority to 99 if they are overdue: rt-crontool \ --search RT::Search::ActiveTicketsInQueue --search-arg general \ --condition RT::Condition::Overdue \ --action RT::Action::SetPriority --action-arg 99 \ --verbose # Escalate tickets rt-crontool \ --search RT::Search::ActiveTicketsInQueue --search-arg general \ --action RT::Action::EscalatePriority # Process tickets in parallel rt-crontool \ --search RT::Search::ActiveTicketsInQueue --search-arg general \ --action RT::Action::SomeTimeConsumingAction --max-processes 10 --max-tickets-per-process 100 # Combine multiple actions: # Find all tickets that are 'new' or 'stalled' and set their priority to 99 if they are overdue # also, escalate them and set their status to open: rt-crontool \ --search RT::Search::FromSQL \ --search-arg "(Status='new' OR Status = 'stalled')" \ --condition RT::Condition::Overdue \ --action RT::Action::SetPriority \ --action-arg 99 \ --action RT::Action::LinearEscalate \ --action-arg "RecordTransaction: 1" \ --action RT::Action::SetStatus \ --action-arg open
Description
This script is a tool to act on tickets from an external scheduling tool, such as cron.
Security:
This tool allows the user to run arbitrary perl modules from within RT. If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT. It is incredibly important that nonprivileged users not be allowed to run this tool. It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool.
Options
- search
Specify the search module you want to use
- search-arg
An argument to pass to --search
- condition
Specify the condition module you want to use
- condition-arg
An argument to pass to --condition
- action
Specify the action module you want to use.
This option may be repeated to apply multiple actions to found tickets.
- action-arg
An argument to pass to --action.
This option may be repeated to pass corresponding arguments to multiple calls of --action. In this case, each --action-arg option must come after the --action argument it applies to. Actions with no --action-arg must come at the end.
- template
Specify name or id of template(s) you want to use
- transaction
Specify if you want to use either 'first', 'last' or 'all' transactions
- transaction-type
Specify the comma separated list of transactions' types you want to use
- reload-ticket
Reload ticket before processing in tickets iteration. This is to refresh ticket metadata, which is useful especially for long-running jobs.
- max-processes
Specify the max number of children to maintain. This implies parallel processing, which is false by default.
- max-tickets-per-process
Specify the max number of tickets to process in each child. Only take effect with --max-processes. Default is 100.
- log
Adjust LogToSTDERR config option
- verbose
Output status updates to STDOUT
- dry-run
Actions are composed of 2 parts: "Prepare" and "Commit".
dry-run
skips the "Commit" part.