[rt-users] Unable to grant Status changes rights to user

Chrilly Cheng chrilde at gmail.com
Wed Jun 24 05:12:48 EDT 2015


Hi All,

I was trying to create a new lifecycle based on our workflow. It works
until I try to set some Status changes rights in config file. I cannot
grant those rights to any user or group with root permission. I'm using
4.0.7 version. I copied the error log and my settings at below, please
someone kindly help to check on it, thanks a lot.

I was unable to grant 'Update ticket to inactive' rights.
Error log:
[error]: Invalid right. Couldn't canonicalize right 'Reopen Case'
(/usr/share/request-tracker4/lib/RT/ACE.pm:410)
[error]: Invalid right. Couldn't canonicalize right 'Update ticket to
inactive' (/usr/share/request-tracker4/lib/RT/ACE.pm:410)
[error]: Invalid right. Couldn't canonicalize right 'AutoSet by Crontool
task(' (/usr/share/request-tracker4/lib/RT/ACE.pm:410)
[warn]: Tried to revoke the invalid right 'Reopen Case', ignoring it.
(/usr/share/request-tracker4/lib/RT/Principal.pm:217)
[warn]: Tried to revoke the invalid right 'Update ticket to inactive',
ignoring it. (/usr/share/request-tracker4/lib/RT/Principal.pm:217)
[warn]: Tried to revoke the invalid right 'AutoSet by Crontool task(',
ignoring it. (/usr/share/request-tracker4/lib/RT/Principal.pm:217)

Here is the lifecycle setting:
Set(%Lifecycles,

        # modify the default lifecycle
        newlifecycle => {
            # All the appropriate ticket statuses
            initial         => [ 'InProgress' ],
            active          => [
'PeerReviewed','WaitingforApproval','Scheduled','ScheduledTimePassed' ],
            inactive        => [
'ChangeCompleted','ChangeUnsuccessful','ChangeBackedOut','DidNotStart' ],

            # Default ticket statuses for certain actions
            defaults => {
                on_create => 'InProgress',
            },

            # Status change restrictions
            transitions => {
                'InProgress'                => [qw(PeerReviewed)],
                'PeerReviewed'                => [qw(WaitingforApproval)],
                'WaitingforApproval'        => [qw(InProgress Scheduled)],
                'Scheduled'                 => [qw(InProgress
ScheduledTimePassed)],
                'ScheduledTimePassed'       => [qw(ChangeCompleted
ChangeUnsuccessful ChangeBackedOut DidNotStart)],
            },

            # Rights for different actions
            rights => {

                # These rights are in the default lifecycle
                'WaitingforApproval -> Scheduled'       => 'Right to
approve ticket',
                '* -> InProgress'                        => 'Right to
unapprove ticket',
                'Scheduled -> ScheduledTimePassed'        => 'AutoSet by
Crontool task(Do not grant)',
                'ScheduledTimePassed -> *'              => 'Update ticket
to inactive status',
            },

            # Actions for the web UI
            actions => [
                'InProgress -> PeerReviewed' => {
                    label  => 'Peer Review Completed',
                    update => 'Comment',
                },
                'PeerReviewed -> WaitingforApproval' => {
                    label  => 'Submit for Approval',
                    update => 'Correspond',
                },
                'WaitingforApproval -> Scheduled' => {
                    label  => 'Approve it',
                    update => 'Commment',
                },
                'WaitingforApproval -> InProgress' => {
                    label  => 'Unapprove it',
                    update => 'Comment',
                },
                'Scheduled -> InProgress'=> {
                    label  => 'Unapprove it',
                    update => 'Correpond',
                },
                'ScheduledTimePassed -> ChangeCompleted' => {
                    label  => 'Change Completed Successfully',
                    update => 'Comment',
                },
                'ScheduledTimePassed -> ChangeUnsuccessful' => {
                    label  => 'Change Unsuccessful',
                    update => 'Comment',
                },
                'ScheduledTimePassed -> ChangeBackedOut' => {
                    label  => 'Change Backed Out',
                    update => 'Comment',
                },
                'ScheduledTimePassed -> DidNotStart' => {
                    label  => 'Did Not Start',
                    update => 'Comment',
                },
            ],
        },
        # Status mapping different lifecycles
        __maps__ => {
            'default -> newlifecycle' => {
                'new'      => 'InProgress',
                'open'     => 'WaitingforApproval',
                'stalled'  => 'Scheduled',
                'resolved' => 'ChangeCompleted',
                'rejected' => 'ChangeBackedOut',
                'deleted'  => 'DidNotStart',
            },
            'newlifecycle -> default' => {
                'InProgress'                    => 'new',
                'PeerReviewed'                    => 'open',
                'WaitingforApproval'            => 'open',
                'Scheduled'                     => 'open',
                'ScheduledTimePassed'           => 'open',
                'ChangeCompleted'                 => 'resolved',
                'ChangeUnsuccessful'               => 'resolved',
                'ChangeBackedOut'               => 'rejected',
                'DidNotStart'                    => 'rejected'
            },
        },
    );

Any comments would be appreciated, thanks a lot.


BR,
Chrilly
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bestpractical.com/pipermail/rt-users/attachments/20150624/1d36f9c2/attachment.htm>


More information about the rt-users mailing list