mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-06-23 18:05:32 +00:00
7452: Fixes submit breakage. 7456: Patch to redeploy new submission workflow definition 7457: Added 'View Deployment' action to workflow sandbox so reviewers can examine the last attempted deployment Added 'Allocated' field to server config, tooltip shows which store the test server is allocated to git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@8363 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
239 lines
8.6 KiB
XML
239 lines
8.6 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!-- This describes a process for submitting changed content in a user -->
|
|
<!-- sandbox, via an approver, to the staging sandbox. -->
|
|
|
|
<process-definition xmlns="urn:jbpm.org:jpdl-3.1" name="wcmwf:submit">
|
|
|
|
<swimlane name="initiator"/>
|
|
|
|
<!-- -->
|
|
<!-- Start Review -->
|
|
<!-- -->
|
|
|
|
<start-state name="start">
|
|
<task name="wcmwf:submitReviewTask" swimlane="initiator"/>
|
|
<transition name="" to="initialise"/>
|
|
</start-state>
|
|
|
|
<decision name="initialise">
|
|
<event type="node-enter">
|
|
<script>
|
|
<variable name="wcmwf_reviewCycle" access="write"/>
|
|
<expression>
|
|
wcmwf_reviewCycle = 1;
|
|
</expression>
|
|
</script>
|
|
</event>
|
|
<transition name="" to="serialorparallel" />
|
|
<transition name="checklinks" to="checklinks">
|
|
<condition>#{wcmwf_validateLinks != null && wcmwf_validateLinks == true}</condition>
|
|
</transition>
|
|
</decision>
|
|
|
|
<!-- -->
|
|
<!-- Validate Links being submitted -->
|
|
<!-- -->
|
|
|
|
<decision name="checklinks">
|
|
<event type="node-enter">
|
|
<action class="org.alfresco.repo.avm.wf.AVMSubmitLinkChecker" />
|
|
</event>
|
|
<transition name="brokenlinkspresent" to="verifybrokenlinks" />
|
|
<transition name="nobrokenlinks" to="serialorparallel" >
|
|
<condition>#{wcmwf_brokenLinks == 0}</condition>
|
|
</transition>
|
|
</decision>
|
|
|
|
<task-node name="verifybrokenlinks">
|
|
<task name="wcmwf:verifyBrokenLinksTask" swimlane="initiator" />
|
|
<transition name="abort" to="end" />
|
|
<transition name="continue" to="serialorparallel" />
|
|
</task-node>
|
|
|
|
<!-- -->
|
|
<!-- Split into Serial or Parallel Review -->
|
|
<!-- -->
|
|
|
|
<decision name="serialorparallel">
|
|
<event type="node-enter">
|
|
<script>
|
|
<variable name="wcmwf_reviewerCnt" access="write"/>
|
|
<variable name="wcmwf_approveCnt" access="write"/>
|
|
<variable name="wcmwf_reviewType" access="write"/>
|
|
<expression>
|
|
wcmwf_reviewerCnt = bpm_assignees.size();
|
|
wcmwf_approveCnt = 0;
|
|
wcmwf_reviewType = wcmwf_submitReviewType;
|
|
</expression>
|
|
</script>
|
|
</event>
|
|
|
|
<transition name="serial" to="submitserialreview" />
|
|
<transition name="parallel" to="submitparallelreview">
|
|
<condition>#{wcmwf_reviewType == "Parallel"}</condition>
|
|
</transition>
|
|
</decision>
|
|
|
|
|
|
<!-- -->
|
|
<!-- Serial Review -->
|
|
<!-- -->
|
|
|
|
<decision name="submitserialreview">
|
|
<transition name="endreview" to="endreview" />
|
|
<transition name="review" to="serialreview">
|
|
<condition>#{wcmwf_approveCnt < wcmwf_reviewerCnt}</condition>
|
|
</transition>
|
|
</decision>
|
|
|
|
<task-node name="serialreview">
|
|
<task name="wcmwf:reviewTask">
|
|
<assignment class="org.alfresco.repo.workflow.jbpm.AlfrescoAssignment">
|
|
<actor>#{bpm_assignees.get(wcmwf_approveCnt)}</actor>
|
|
</assignment>
|
|
<event type="task-assign">
|
|
<script>
|
|
if (wcmwf_reviewCycle > 1)
|
|
taskInstance.description = taskInstance.description + " (" + wcmwf_reviewCycle + ")";
|
|
</script>
|
|
</event>
|
|
</task>
|
|
|
|
<transition name="approve" to="submitserialreview">
|
|
<script>
|
|
<variable name="wcmwf_approveCnt" access="read, write"/>
|
|
<expression>
|
|
wcmwf_approveCnt = wcmwf_approveCnt + 1;
|
|
</expression>
|
|
</script>
|
|
</transition>
|
|
<transition name="reject" to="endreview" />
|
|
</task-node>
|
|
|
|
|
|
<!-- -->
|
|
<!-- Parallel Review -->
|
|
<!-- -->
|
|
|
|
<node name="submitparallelreview">
|
|
<action class="org.alfresco.repo.workflow.jbpm.ForEachFork">
|
|
<foreach>#{bpm_assignees}</foreach>
|
|
<var>reviewer</var>
|
|
</action>
|
|
<transition name="review" to="parallelreview" />
|
|
</node>
|
|
|
|
<task-node name="parallelreview">
|
|
<task name="wcmwf:parallelReviewTask">
|
|
<assignment class="org.alfresco.repo.workflow.jbpm.AlfrescoAssignment">
|
|
<actor>#{reviewer}</actor>
|
|
</assignment>
|
|
<event type="task-assign">
|
|
<script>
|
|
if (wcmwf_reviewCycle > 1)
|
|
taskInstance.description = taskInstance.description + " (" + wcmwf_reviewCycle + ")";
|
|
</script>
|
|
</event>
|
|
</task>
|
|
<transition name="approve" to="joinparallelreview">
|
|
<script>
|
|
<variable name="wcmwf_approveCnt" access="read,write" />
|
|
<expression>
|
|
wcmwf_approveCnt = wcmwf_approveCnt +1;
|
|
</expression>
|
|
</script>
|
|
</transition>
|
|
<transition name="reject" to="joinparallelreview" />
|
|
</task-node>
|
|
|
|
<join name="joinparallelreview">
|
|
<transition to="endreview" />
|
|
</join>
|
|
|
|
|
|
<!-- -->
|
|
<!-- End the Review -->
|
|
<!-- -->
|
|
|
|
<decision name="endreview">
|
|
<transition name="rejected" to="rejected" />
|
|
<transition name="approved" to="onapprove">
|
|
<condition>#{wcmwf_approveCnt == wcmwf_reviewerCnt}</condition>
|
|
</transition>
|
|
</decision>
|
|
|
|
<task-node name="rejected">
|
|
<task name="wcmwf:rejectedTask" swimlane="initiator" >
|
|
<event type="task-assign">
|
|
<script>
|
|
if (wcmwf_reviewCycle > 1)
|
|
taskInstance.description = taskInstance.description + " (" + wcmwf_reviewCycle + ")";
|
|
</script>
|
|
</event>
|
|
</task>
|
|
<transition name="abort" to="end" />
|
|
<transition name="resubmit" to="serialorparallel"> <!-- restart review process (next cycle) -->
|
|
<script>
|
|
<variable name="wcmwf_reviewCycle" access="read,write" />
|
|
<expression>
|
|
wcmwf_reviewCycle = wcmwf_reviewCycle +1;
|
|
</expression>
|
|
</script>
|
|
</transition>
|
|
</task-node>
|
|
|
|
<decision name="onapprove">
|
|
<transition name="launchnow" to="submitted" />
|
|
<transition name="launchpending" to="submitpending">
|
|
<condition>#{wcmwf_launchDate != null}</condition>
|
|
</transition>
|
|
</decision>
|
|
|
|
<task-node name="submitpending">
|
|
<task name="wcmwf:submitpendingTask" swimlane="initiator">
|
|
<event type="task-create">
|
|
<script>
|
|
taskInstance.dueDate = wcmwf_launchDate;
|
|
</script>
|
|
</event>
|
|
<timer duedate="#{wcmwf_launchDate}" transition="launch" >
|
|
<action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
|
|
<script>
|
|
logger.log("WCM Submission " + bpm_workflowDescription + " submitted at " + wcmwf_launchDate + " by " + person.properties.userName);
|
|
</script>
|
|
</action>
|
|
</timer>
|
|
</task>
|
|
<transition name="cancel" to="submitcancelled" />
|
|
<transition name="launch" to="submitted" />
|
|
</task-node>
|
|
|
|
<task-node name="submitcancelled">
|
|
<task name="wcmwf:submitcancelledTask" swimlane="initiator" />
|
|
<transition name="" to="end" />
|
|
</task-node>
|
|
|
|
<task-node name="submitted">
|
|
<event type="node-enter">
|
|
<action class="org.alfresco.repo.avm.wf.AVMSubmitPackageHandler"/>
|
|
<action class="org.alfresco.repo.avm.wf.AVMDeployHandler"/>
|
|
</event>
|
|
<task name="wcmwf:submittedTask" swimlane="initiator" />
|
|
<transition name="" to="end" />
|
|
</task-node>
|
|
|
|
<!-- -->
|
|
<!-- End the Process -->
|
|
<!-- -->
|
|
|
|
<end-state name="end"/>
|
|
|
|
<event type="process-end">
|
|
<action class="org.alfresco.repo.avm.wf.AVMRemoveAllSrcWebappsHandler"/>
|
|
<action class="org.alfresco.repo.avm.wf.AVMReleaseTestServerHandler"/>
|
|
<action class="org.alfresco.repo.avm.wf.AVMRemoveWFStoreHandler"/>
|
|
</event>
|
|
|
|
</process-definition>
|