close
Warning:
Can't synchronize with repository "(default)" (The repository directory has changed, you should resynchronize the repository with: trac-admin $ENV repository resync '(default)'). Look in the Trac log for more information.
- Timestamp:
-
2021-07-11T14:17:48-07:00 (4 years ago)
- Author:
-
trac
- Comment:
-
--
Legend:
- Unmodified
- Added
- Removed
- Modified
-
|
v4
|
v5
|
|
| 41 | 41 | == Additional Ticket Workflows |
| 42 | 42 | |
| 43 | | There are example workflows provided in the Trac source tree, see [trac:source:branches/1.4-stable/contrib/workflow contrib/workflow] for `.ini` config sections. One of those may be a good match for what you want. They can be pasted into the `[ticket-workflow]` section of your `trac.ini` file. However, if you have existing tickets then there may be issues if those tickets have states that are not in the new workflow. |
| | 43 | There are example workflows provided in the Trac source tree, see [trac:source:branches/1.4-stable/contrib/workflow contrib/workflow] for `.ini` config sections. One of those may be a good match for what you want. They can be pasted into the `[ticket-workflow]` section of your `trac.ini` file. However, if you have existing tickets then there may be issues if those tickets have states that are not in the new workflow. |
| 44 | 44 | |
| 45 | 45 | Here are some [trac:WorkFlow/Examples diagrams] of the above examples. |
| … |
… |
|
| 49 | 49 | '''Note''': Ticket "statuses" or "states" are not separately defined. The states a ticket can be in are automatically generated by the transitions defined in a workflow. Therefore, creating a new ticket state simply requires defining a state transition in the workflow that starts or ends with that state. |
| 50 | 50 | |
| 51 | | In the `[ticket-workflow]` section of `trac.ini`, each entry is an action that may be taken on a ticket. |
| | 51 | In the `[ticket-workflow]` section of `trac.ini`, each entry is an action that may be taken on a ticket. |
| 52 | 52 | For example, consider the `accept` action from `simple-workflow.ini`: |
| 53 | 53 | |
| … |
… |
|
| 69 | 69 | - ''actionname''`.set_owner` may optionally specify a comma delimited list of users that will be used to populate the select, or a single user. Groups and permissions may also be included in the list //(Since 1.1.3)//. When groups or permissions are specified the select is populated with all members of the group or all users that possess the permission. |
| 70 | 70 | - **set_owner_to_self** -- Sets the owner to the logged in user. |
| 71 | | - **may_set_owner** -- Sets the owner to the selected or entered owner. Defaults to the existing owner. //(Since 1.1.2)//. |
| | 71 | - **may_set_owner** -- Sets the owner to the selected or entered owner. Defaults to the existing owner. //(Since 1.1.2)//. |
| 72 | 72 | - **del_resolution** -- Clears the resolution field. |
| 73 | 73 | - **set_resolution** -- Sets the resolution to the selected value. |
| … |
… |
|
| 102 | 102 | }}} |
| 103 | 103 | |
| | 104 | The transition to `*` (`-> *`) means the workflow operation determines the next status. The only configurable ticket workflow operation that determines the next status is `leave_status`. However, another workflow controller can operate on an action with new status `*` and determine the next status. |
| | 105 | |
| 104 | 106 | This also shows the use of the `.default` attribute. This value is expected to be an integer, and the order in which the actions are displayed is determined by this value. The action with the highest `.default` value is listed first, and is selected by default. The rest of the actions are listed in order of decreasing `.default` values. |
| 105 | 107 | If not specified for an action, `.default` is 0. The value may be negative. |
| … |
… |
|
| 197 | 199 | reassign_reviewing = reviewing -> * |
| 198 | 200 | reassign_reviewing.label = reassign review |
| 199 | | reassign_reviewing.operations = set_owner |
| | 201 | reassign_reviewing.operations = set_owner, leave_status |
| 200 | 202 | reassign_reviewing.permissions = TICKET_MODIFY |
| 201 | 203 | }}} |
| … |
… |
|
| 230 | 232 | review.permissions = TICKET_MODIFY |
| 231 | 233 | reassign_reviewing = reviewing -> * |
| 232 | | reassign_reviewing.operations = set_owner |
| | 234 | reassign_reviewing.operations = set_owner, leave_status |
| 233 | 235 | reassign_reviewing.label = reassign review |
| 234 | 236 | reassign_reviewing.permissions = TICKET_MODIFY |
| … |
… |
|
| 247 | 249 | == Ideas for next steps |
| 248 | 250 | |
| 249 | | Enhancement ideas for the workflow system should be filed as enhancement tickets against the [trac:query:?status=assigned&status=new&status=reopened&keywords=~workflow&component=ticket+system ticket system] component. You can also document ideas on the [trac:TracIdeas/TracWorkflow TracIdeas/TracWorkflow] page. |
| | 251 | Enhancement ideas for the workflow system should be filed as enhancement tickets against the [trac:query:?status=assigned&status=new&status=reopened&keywords=~workflow&component=ticket+system ticket system] component. You can also document ideas on the [trac:TracIdeas/TracWorkflow TracIdeas/TracWorkflow] page. |