"Delivery" vs "Delivery and Resolve Work Item"
3 answers
If you're referring to com.ibm.team.scm.server.deliver, I'm not sure what you mean. There is a permission id by that name and the permission to deliver is checked with both actions.
Comments
the challenge we have is for "Deliver and Resolve Action" it will change the WorkItem to state 1 to state 2. However our customized process requires for the state remains the same if a changeset is delivered to specific stream.
I'm still not quite clear what you want to do. What's the work item state that changes? The deliver and resolve action will resolve the work item and do a couple other things if you choose. I don't know what part you don't want to change but it sounds like the deliver and resolve action is not what you want to do.
k so there are two extension plugins deployed for each action:
No, it does not provide an extension point for you to extend. It's just an action that executes an operation based on the selection. You could reimplement this and do whatever you want but it does sound more like you should have a precondition on the work item save. Run your checks there and prevent the work item from saving based on your conditions.
First, I assume you are asking about the behavior of the "deliver and resolve work item" request (and not the "deliver" request).
Second, I assume by "extension plug-in associated with an action", you are referring to something like a precondition or follow-up action associated with an action.
Third, I assume when you say "two extension plug-ins associated with these two actions", you mean one extension associated with the "deliver" action (e.g. a deliver precondition) and another that is associated with the "resolve work item" action (e.g. a save work item precondition).
This is my understanding of how it works.
The "deliver and resolve work item" effectively invokes two actions: the deliver action and an edit/save action on the work item. All extensions of the deliver action and all extensions of the edit/save action will be invoked when you perform a "deliver and resolve work item". I did a quick test, and it appears to invoke all of the pre-conditions before invoking the actions (as one would expect), since if either a deliver precondition or a save-work-item precondition fails, then neither the deliver or the resolve-work-item actions are performed. But I haven't had a chance to experiment with the follow-up actions. Ideally, I'd like all actions and their follow-up actions to be performed in one database transaction, so if any of the actions or follow-up actions fail, then no changes are made to the database. But it is possible that what is actually done is that each action with its follow-up actions are performed in a separate transaction. If that is the case, then the question is what is done when one of the follow-up actions fails ... are the rest of the actions skipped, or are they attempted? Does anyone know which is the case?
our next workflow state was not 'resolved', but 'implemented' with verified and resolved after that.
Comments
my understanding of "Deliver and Resolve" is that it does the deliver and then it runs the action defined on the workflow for the work item type. So if the action defined in your workflow as the "resolve action" moves it to a closed group, then I could see how that happens. But for example, our Defect Workflow has the "Resolve action" defined as "Fix Finished" and that action has a Target State of "Ready" and that State is in the In progress group.
Susan
Deliver and resolve won't do what you want. It puts the work item in the first resolved state that it retrieves. If you have multiple resolved states then there's no guarantee it will pick the state that you want. If your state for implemented is not set as a resolved state then the action will never use that state.
yeh.. the problem is the darned USERS pick this cause its 'faster'.. but it screws up all the reporting cause u have to use re-open to get it back from the accidental early resolved state. then the counts of re-opened are invalid.
really need to remove this option from the menu.