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 non-privileged 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.