Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
slapos.core
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
20
Merge Requests
20
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Jobs
Commits
Open sidebar
nexedi
slapos.core
Commits
b08a0c36
Commit
b08a0c36
authored
5 years ago
by
Łukasz Nowak
Committed by
Rafael Monnerat
5 years ago
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Feature computer remove unused software
/reviewed-on
nexedi/slapos.core!121
parent
21a01ff7
Changes
30
Hide whitespace changes
Inline
Side-by-side
Showing
30 changed files
with
1463 additions
and
1 deletion
+1463
-1
master/bt5/slapos_pdm/PathTemplateItem/portal_alarms/slapos_pdm_destroy_software_installation_with_archived_software_release.xml
..._software_installation_with_archived_software_release.xml
+97
-0
master/bt5/slapos_pdm/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
...rtalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
+4
-0
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/Alarm_destroySoftwareInstallationWithArchivedSoftwareRelease.py
...destroySoftwareInstallationWithArchivedSoftwareRelease.py
+12
-0
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/Alarm_destroySoftwareInstallationWithArchivedSoftwareRelease.xml
...estroySoftwareInstallationWithArchivedSoftwareRelease.xml
+62
-0
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/SoftwareInstallation_destroyWithSoftwareReleaseArchived.py
...oftwareInstallation_destroyWithSoftwareReleaseArchived.py
+24
-0
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/SoftwareInstallation_destroyWithSoftwareReleaseArchived.xml
...ftwareInstallation_destroyWithSoftwareReleaseArchived.xml
+62
-0
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/SoftwareRelease_findAndDestroySoftwareInstallation.py
...pdm/SoftwareRelease_findAndDestroySoftwareInstallation.py
+24
-0
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/SoftwareRelease_findAndDestroySoftwareInstallation.xml
...dm/SoftwareRelease_findAndDestroySoftwareInstallation.xml
+62
-0
master/bt5/slapos_pdm/TestTemplateItem/portal_components/test.erp5.testSlapOSPDMDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm.py
...oySoftwareInstallationWithArchivedSoftwareReleaseAlarm.py
+240
-0
master/bt5/slapos_pdm/TestTemplateItem/portal_components/test.erp5.testSlapOSPDMDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm.xml
...ySoftwareInstallationWithArchivedSoftwareReleaseAlarm.xml
+123
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow.xml
...tal_workflow/slapos_software_release_cleanup_workflow.xml
+66
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/scripts.xml
...flow/slapos_software_release_cleanup_workflow/scripts.xml
+22
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/states.xml
...kflow/slapos_software_release_cleanup_workflow/states.xml
+28
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/states/cleaned.xml
...apos_software_release_cleanup_workflow/states/cleaned.xml
+36
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/states/draft.xml
...slapos_software_release_cleanup_workflow/states/draft.xml
+38
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/transitions.xml
.../slapos_software_release_cleanup_workflow/transitions.xml
+28
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/transitions/cleanup.xml
...software_release_cleanup_workflow/transitions/cleanup.xml
+79
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables.xml
...ow/slapos_software_release_cleanup_workflow/variables.xml
+28
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/action.xml
...os_software_release_cleanup_workflow/variables/action.xml
+61
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/actor.xml
...pos_software_release_cleanup_workflow/variables/actor.xml
+61
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/comment.xml
...s_software_release_cleanup_workflow/variables/comment.xml
+61
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/error_message.xml
...ware_release_cleanup_workflow/variables/error_message.xml
+48
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/history.xml
...s_software_release_cleanup_workflow/variables/history.xml
+61
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/portal_type.xml
...ftware_release_cleanup_workflow/variables/portal_type.xml
+48
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/time.xml
...apos_software_release_cleanup_workflow/variables/time.xml
+61
-0
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/worklists.xml
...ow/slapos_software_release_cleanup_workflow/worklists.xml
+22
-0
master/bt5/slapos_pdm/bt/template_path_list
master/bt5/slapos_pdm/bt/template_path_list
+1
-0
master/bt5/slapos_pdm/bt/template_portal_type_workflow_chain_list
...t5/slapos_pdm/bt/template_portal_type_workflow_chain_list
+1
-0
master/bt5/slapos_pdm/bt/template_test_id_list
master/bt5/slapos_pdm/bt/template_test_id_list
+2
-1
master/bt5/slapos_pdm/bt/template_workflow_id_list
master/bt5/slapos_pdm/bt/template_workflow_id_list
+1
-0
No files found.
master/bt5/slapos_pdm/PathTemplateItem/portal_alarms/slapos_pdm_destroy_software_installation_with_archived_software_release.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Alarm"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
active_sense_method_id
</string>
</key>
<value>
<string>
Alarm_destroySoftwareInstallationWithArchivedSoftwareRelease
</string>
</value>
</item>
<item>
<key>
<string>
automatic_solve
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
enabled
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
slapos_pdm_destroy_software_installation_with_archived_software_release
</string>
</value>
</item>
<item>
<key>
<string>
periodicity_hour
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
periodicity_hour_frequency
</string>
</key>
<value>
<int>
2
</int>
</value>
</item>
<item>
<key>
<string>
periodicity_minute
</string>
</key>
<value>
<tuple>
<int>
0
</int>
</tuple>
</value>
</item>
<item>
<key>
<string>
periodicity_month
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
periodicity_month_day
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
periodicity_start_date
</string>
</key>
<value>
<object>
<klass>
<global
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
0.0
</float>
<string>
GMT
</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
periodicity_week
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Alarm
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Destroy Software Installation related to archived Software Releases
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
View file @
b08a0c36
...
...
@@ -3,6 +3,10 @@
<type>
Software Product
</type>
<workflow>
-validation_workflow, commerce_validation_workflow
</workflow>
</chain>
<chain>
<type>
Software Release
</type>
<workflow>
slapos_software_release_cleanup_workflow
</workflow>
</chain>
<chain>
<type>
Upgrade Decision
</type>
<workflow>
edit_workflow, ticket_interaction_workflow, upgrade_decision_workflow
</workflow>
...
...
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/Alarm_destroySoftwareInstallationWithArchivedSoftwareRelease.py
0 → 100644
View file @
b08a0c36
portal
=
context
.
getPortalObject
()
portal
.
portal_catalog
.
searchAndActivate
(
portal_type
=
'Software Release'
,
validation_state
=
'archived'
,
simulation_state
=
'draft'
,
method_id
=
'SoftwareRelease_findAndDestroySoftwareInstallation'
,
method_kw
=
{
'tag'
:
tag
},
activate_kw
=
{
'tag'
:
tag
}
)
context
.
activate
(
after_tag
=
tag
).
getId
()
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/Alarm_destroySoftwareInstallationWithArchivedSoftwareRelease.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"PythonScript"
module=
"Products.PythonScripts.PythonScript"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
Script_magic
</string>
</key>
<value>
<int>
3
</int>
</value>
</item>
<item>
<key>
<string>
_bind_names
</string>
</key>
<value>
<object>
<klass>
<global
name=
"NameAssignments"
module=
"Shared.DC.Scripts.Bindings"
/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key>
<string>
_asgns
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
name_container
</string>
</key>
<value>
<string>
container
</string>
</value>
</item>
<item>
<key>
<string>
name_context
</string>
</key>
<value>
<string>
context
</string>
</value>
</item>
<item>
<key>
<string>
name_m_self
</string>
</key>
<value>
<string>
script
</string>
</value>
</item>
<item>
<key>
<string>
name_subpath
</string>
</key>
<value>
<string>
traverse_subpath
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
_params
</string>
</key>
<value>
<string>
tag, fixit, params
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
Alarm_destroySoftwareInstallationWithArchivedSoftwareRelease
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/SoftwareInstallation_destroyWithSoftwareReleaseArchived.py
0 → 100644
View file @
b08a0c36
software_installation
=
context
url_string
=
software_installation
.
getUrlString
()
if
software_installation
.
getValidationState
()
!=
'validated'
:
return
if
software_installation
.
getSlapState
()
!=
'start_requested'
:
return
software_release
=
software_installation
.
portal_catalog
.
getResultValue
(
portal_type
=
'Software Release'
,
validation_state
=
'archived'
,
url_string
=
url_string
)
if
software_release
is
None
:
return
computer
=
software_installation
.
getAggregateValue
(
portal_type
=
'Computer'
)
if
computer
is
None
:
return
if
computer
.
Computer_getSoftwareReleaseUsage
(
url_string
)
!=
0
:
return
software_installation
.
requestDestroy
(
comment
=
'Destroyed by %s as %s is archived.'
%
(
script
.
id
,
software_release
.
getRelativeUrl
(),))
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/SoftwareInstallation_destroyWithSoftwareReleaseArchived.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"PythonScript"
module=
"Products.PythonScripts.PythonScript"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
Script_magic
</string>
</key>
<value>
<int>
3
</int>
</value>
</item>
<item>
<key>
<string>
_bind_names
</string>
</key>
<value>
<object>
<klass>
<global
name=
"NameAssignments"
module=
"Shared.DC.Scripts.Bindings"
/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key>
<string>
_asgns
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
name_container
</string>
</key>
<value>
<string>
container
</string>
</value>
</item>
<item>
<key>
<string>
name_context
</string>
</key>
<value>
<string>
context
</string>
</value>
</item>
<item>
<key>
<string>
name_m_self
</string>
</key>
<value>
<string>
script
</string>
</value>
</item>
<item>
<key>
<string>
name_subpath
</string>
</key>
<value>
<string>
traverse_subpath
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
_params
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
SoftwareInstallation_destroyWithSoftwareReleaseArchived
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/SoftwareRelease_findAndDestroySoftwareInstallation.py
0 → 100644
View file @
b08a0c36
if
context
.
getValidationState
()
!=
'archived'
:
return
if
context
.
getSimulationState
()
==
'cleaned'
:
return
portal
=
context
.
getPortalObject
()
catalog_kw
=
dict
(
portal_type
=
'Software Installation'
,
validation_state
=
'validated'
,
url_string
=
context
.
getUrlString
()
)
count
=
portal
.
portal_catalog
.
countResults
(
**
catalog_kw
)
if
count
[
0
][
0
]
==
0
:
context
.
cleanup
(
comment
=
'No more validated Software Installations found'
)
else
:
portal
.
portal_catalog
.
searchAndActivate
(
method_id
=
'SoftwareInstallation_destroyWithSoftwareReleaseArchived'
,
activate_kw
=
{
'tag'
:
tag
},
**
catalog_kw
)
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/SkinTemplateItem/portal_skins/slapos_pdm/SoftwareRelease_findAndDestroySoftwareInstallation.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"PythonScript"
module=
"Products.PythonScripts.PythonScript"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
Script_magic
</string>
</key>
<value>
<int>
3
</int>
</value>
</item>
<item>
<key>
<string>
_bind_names
</string>
</key>
<value>
<object>
<klass>
<global
name=
"NameAssignments"
module=
"Shared.DC.Scripts.Bindings"
/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key>
<string>
_asgns
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
name_container
</string>
</key>
<value>
<string>
container
</string>
</value>
</item>
<item>
<key>
<string>
name_context
</string>
</key>
<value>
<string>
context
</string>
</value>
</item>
<item>
<key>
<string>
name_m_self
</string>
</key>
<value>
<string>
script
</string>
</value>
</item>
<item>
<key>
<string>
name_subpath
</string>
</key>
<value>
<string>
traverse_subpath
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
_params
</string>
</key>
<value>
<string>
tag
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
SoftwareRelease_findAndDestroySoftwareInstallation
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/TestTemplateItem/portal_components/test.erp5.testSlapOSPDMDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm.py
0 → 100644
View file @
b08a0c36
# -*- coding: utf-8 -*-
##############################################################################
#
# Copyright (c) 2019 Nexedi SA and Contributors. All Rights Reserved.
#
##############################################################################
from
erp5.component.test.SlapOSTestCaseMixin
import
SlapOSTestCaseMixin
from
erp5.component.test.testSlapOSAccountingAlarm
import
simulateByEditWorkflowMark
class
TestSlapOSDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm
(
SlapOSTestCaseMixin
):
def
createInstance
(
self
,
url_string
):
hosting_subscription
=
self
.
portal
.
hosting_subscription_module
\
.
template_hosting_subscription
.
Base_createCloneDocument
(
batch_mode
=
1
)
hosting_subscription
.
edit
(
)
hosting_subscription
.
validate
()
hosting_subscription
.
edit
(
title
=
self
.
generateNewSoftwareTitle
(),
reference
=
"TESTHS-%s"
%
self
.
generateNewId
(),
)
request_kw
=
dict
(
software_release
=
url_string
,
software_type
=
self
.
generateNewSoftwareType
(),
instance_xml
=
self
.
generateSafeXml
(),
sla_xml
=
self
.
generateSafeXml
(),
shared
=
False
,
software_title
=
hosting_subscription
.
getTitle
(),
state
=
'started'
)
hosting_subscription
.
requestStart
(
**
request_kw
)
hosting_subscription
.
requestInstance
(
**
request_kw
)
instance
=
hosting_subscription
.
getPredecessorValue
()
self
.
tic
()
return
instance
def
test
(
self
):
preference
=
self
.
portal
.
portal_preferences
.
getActiveSystemPreference
()
preference
.
setPreferredCloudContractEnabled
(
True
)
self
.
tic
()
computer
,
partition
=
self
.
_makeComputer
()
archived_url_string
=
self
.
generateNewSoftwareReleaseUrl
()
# create software release
archived_software_release
=
self
.
portal
.
software_release_module
.
newContent
(
portal_type
=
'Software Release'
,
version
=
'1'
,
url_string
=
archived_url_string
)
archived_software_release
.
publish
()
archived_software_release
.
archive
()
self
.
assertEqual
(
'draft'
,
archived_software_release
.
getSimulationState
())
# install an software release
archived_software_installation
=
self
.
portal
.
software_installation_module
\
.
newContent
(
portal_type
=
'Software Installation'
,
url_string
=
archived_url_string
,
aggregate
=
computer
.
getRelativeUrl
())
archived_software_installation
.
validate
()
archived_software_installation
.
requestStart
()
archived_used_url_string
=
self
.
generateNewSoftwareReleaseUrl
()
# create software release
archived_used_software_release
=
self
.
portal
.
software_release_module
.
newContent
(
portal_type
=
'Software Release'
,
version
=
'1'
,
url_string
=
archived_used_url_string
)
archived_used_software_release
.
publish
()
archived_used_software_release
.
archive
()
self
.
assertEqual
(
'draft'
,
archived_used_software_release
.
getSimulationState
())
# install an software release
archived_used_software_installation
=
self
.
portal
.
software_installation_module
\
.
newContent
(
portal_type
=
'Software Installation'
,
url_string
=
archived_used_url_string
,
aggregate
=
computer
.
getRelativeUrl
())
archived_used_software_installation
.
validate
()
archived_used_software_installation
.
requestStart
()
# use the software release
instance
=
self
.
createInstance
(
archived_used_url_string
)
instance
.
setAggregate
(
partition
.
getRelativeUrl
())
partition
.
markBusy
()
self
.
tic
()
published_url_string
=
self
.
generateNewSoftwareReleaseUrl
()
# create software release
published_software_release
=
self
.
portal
.
software_release_module
.
newContent
(
portal_type
=
'Software Release'
,
version
=
'1'
,
url_string
=
published_url_string
)
published_software_release
.
publish
()
self
.
assertEqual
(
'draft'
,
published_software_release
.
getSimulationState
())
# install an software release
published_software_installation
=
self
.
portal
.
software_installation_module
\
.
newContent
(
portal_type
=
'Software Installation'
,
url_string
=
published_url_string
,
aggregate
=
computer
.
getRelativeUrl
())
published_software_installation
.
validate
()
published_software_installation
.
requestStart
()
self
.
tic
()
# first run touches software installation
self
.
stepCallSlaposPdmDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm
()
self
.
tic
()
self
.
assertEqual
(
'destroy_requested'
,
archived_software_installation
.
getSlapState
())
self
.
assertEqual
(
'validated'
,
archived_software_installation
.
getValidationState
())
self
.
assertEqual
(
'start_requested'
,
published_software_installation
.
getSlapState
())
self
.
assertEqual
(
'validated'
,
published_software_installation
.
getValidationState
())
self
.
assertEqual
(
'start_requested'
,
archived_used_software_installation
.
getSlapState
())
self
.
assertEqual
(
'validated'
,
archived_used_software_installation
.
getValidationState
())
# second run, but it is still not reported that software installation is destroyed
self
.
stepCallSlaposPdmDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm
()
self
.
tic
()
self
.
assertEqual
(
'draft'
,
archived_software_release
.
getSimulationState
())
self
.
assertEqual
(
'draft'
,
published_software_release
.
getSimulationState
())
self
.
assertEqual
(
'start_requested'
,
published_software_installation
.
getSlapState
())
self
.
assertEqual
(
'validated'
,
archived_used_software_installation
.
getValidationState
())
self
.
assertEqual
(
'start_requested'
,
archived_used_software_installation
.
getSlapState
())
# simulate the computer run
archived_software_installation
.
invalidate
()
self
.
tic
()
self
.
stepCallSlaposPdmDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm
()
self
.
tic
()
self
.
assertEqual
(
'cleaned'
,
archived_software_release
.
getSimulationState
())
self
.
assertEqual
(
'draft'
,
published_software_release
.
getSimulationState
())
self
.
assertEqual
(
'start_requested'
,
published_software_installation
.
getSlapState
())
self
.
assertEqual
(
'validated'
,
archived_used_software_installation
.
getValidationState
())
self
.
assertEqual
(
'start_requested'
,
archived_used_software_installation
.
getSlapState
())
@
simulateByEditWorkflowMark
(
'SoftwareRelease_findAndDestroySoftwareInstallation'
)
def
test_no_op_run_software_release
(
self
):
archived_software_release
=
self
.
portal
.
software_release_module
.
newContent
(
portal_type
=
'Software Release'
,
version
=
'1'
,
url_string
=
self
.
generateNewSoftwareReleaseUrl
(),
)
archived_software_release
.
publish
()
archived_software_release
.
archive
()
self
.
assertEqual
(
'draft'
,
archived_software_release
.
getSimulationState
())
archived_cleaned_software_release
=
self
.
portal
.
software_release_module
.
newContent
(
portal_type
=
'Software Release'
,
version
=
'1'
,
url_string
=
self
.
generateNewSoftwareReleaseUrl
(),
)
archived_cleaned_software_release
.
publish
()
archived_cleaned_software_release
.
archive
()
archived_cleaned_software_release
.
cleanup
()
self
.
assertEqual
(
'cleaned'
,
archived_cleaned_software_release
.
getSimulationState
())
published_software_release
=
self
.
portal
.
software_release_module
.
newContent
(
portal_type
=
'Software Release'
,
version
=
'1'
,
url_string
=
self
.
generateNewSoftwareReleaseUrl
(),
)
published_software_release
.
publish
()
self
.
assertEqual
(
'draft'
,
published_software_release
.
getSimulationState
())
self
.
tic
()
self
.
stepCallSlaposPdmDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm
()
self
.
tic
()
v
=
'Visited by SoftwareRelease_findAndDestroySoftwareInstallation'
self
.
assertFalse
(
v
in
[
q
[
'comment'
]
for
q
in
published_software_release
.
workflow_history
[
'edit_workflow'
]])
self
.
assertFalse
(
v
in
[
q
[
'comment'
]
for
q
in
archived_cleaned_software_release
.
workflow_history
[
'edit_workflow'
]])
self
.
assertTrue
(
v
in
[
q
[
'comment'
]
for
q
in
archived_software_release
.
workflow_history
[
'edit_workflow'
]])
@
simulateByEditWorkflowMark
(
'SoftwareInstallation_destroyWithSoftwareReleaseArchived'
)
def
test_no_op_run_software_installation
(
self
):
preference
=
self
.
portal
.
portal_preferences
.
getActiveSystemPreference
()
preference
.
setPreferredCloudContractEnabled
(
True
)
self
.
tic
()
computer
,
partition
=
self
.
_makeComputer
()
partition
.
invalidate
()
partition
.
markBusy
()
url_string
=
self
.
generateNewSoftwareReleaseUrl
()
archived_software_release
=
self
.
portal
.
software_release_module
.
newContent
(
portal_type
=
'Software Release'
,
version
=
'1'
,
url_string
=
url_string
,
)
archived_software_release
.
publish
()
archived_software_release
.
archive
()
self
.
assertEqual
(
'draft'
,
archived_software_release
.
getSimulationState
())
software_installation_validated_request_start
=
self
.
portal
.
software_installation_module
\
.
newContent
(
portal_type
=
'Software Installation'
,
url_string
=
url_string
,
aggregate
=
computer
.
getRelativeUrl
())
software_installation_validated_request_start
.
validate
()
software_installation_validated_request_start
.
requestStart
()
software_installation_validated_request_destroy
=
self
.
portal
.
software_installation_module
\
.
newContent
(
portal_type
=
'Software Installation'
,
url_string
=
url_string
,
aggregate
=
computer
.
getRelativeUrl
())
software_installation_validated_request_destroy
.
validate
()
software_installation_validated_request_destroy
.
requestStart
()
software_installation_validated_request_destroy
.
requestDestroy
()
software_installation_invalidated_request_destroy
=
self
.
portal
.
software_installation_module
\
.
newContent
(
portal_type
=
'Software Installation'
,
url_string
=
url_string
,
aggregate
=
computer
.
getRelativeUrl
())
software_installation_invalidated_request_destroy
.
validate
()
software_installation_invalidated_request_destroy
.
requestStart
()
software_installation_invalidated_request_destroy
.
requestDestroy
()
software_installation_invalidated_request_destroy
.
invalidate
()
self
.
tic
()
# sanity check
self
.
assertEqual
(
'validated'
,
software_installation_validated_request_start
.
getValidationState
())
self
.
assertEqual
(
'start_requested'
,
software_installation_validated_request_start
.
getSlapState
())
self
.
assertEqual
(
'validated'
,
software_installation_validated_request_destroy
.
getValidationState
())
self
.
assertEqual
(
'destroy_requested'
,
software_installation_validated_request_destroy
.
getSlapState
())
self
.
assertEqual
(
'invalidated'
,
software_installation_invalidated_request_destroy
.
getValidationState
())
self
.
assertEqual
(
'destroy_requested'
,
software_installation_invalidated_request_destroy
.
getSlapState
())
self
.
stepCallSlaposPdmDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm
()
self
.
tic
()
v
=
'Visited by SoftwareInstallation_destroyWithSoftwareReleaseArchived'
self
.
assertTrue
(
v
in
[
q
[
'comment'
]
for
q
in
software_installation_validated_request_start
.
workflow_history
[
'edit_workflow'
]])
self
.
assertTrue
(
v
in
[
q
[
'comment'
]
for
q
in
software_installation_validated_request_destroy
.
workflow_history
[
'edit_workflow'
]])
self
.
assertFalse
(
v
in
[
q
[
'comment'
]
for
q
in
software_installation_invalidated_request_destroy
.
workflow_history
[
'edit_workflow'
]])
\ No newline at end of file
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/TestTemplateItem/portal_components/test.erp5.testSlapOSPDMDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Test Component"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testSlapOSPDMDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testSlapOSPDMDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Test Component
</string>
</value>
</item>
<item>
<key>
<string>
sid
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
text_content_error_message
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<string>
erp5
</string>
</value>
</item>
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
validate
</string>
</value>
</item>
<item>
<key>
<string>
validation_state
</string>
</key>
<value>
<string>
validated
</string>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"DCWorkflowDefinition"
module=
"Products.DCWorkflow.DCWorkflow"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_objects
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
creation_guard
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
groups
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
slapos_software_release_cleanup_workflow
</string>
</value>
</item>
<item>
<key>
<string>
initial_state
</string>
</key>
<value>
<string>
draft
</string>
</value>
</item>
<item>
<key>
<string>
manager_bypass
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
permissions
</string>
</key>
<value>
<tuple>
<string>
Access contents information
</string>
<string>
View
</string>
<string>
Add portal content
</string>
<string>
Modify portal content
</string>
<string>
Delete objects
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
state_var
</string>
</key>
<value>
<string>
simulation_state
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Software Release Cleanup Workflow
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/scripts.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Scripts"
module=
"Products.DCWorkflow.Scripts"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_mapping
</string>
</key>
<value>
<dictionary/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
scripts
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/states.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"States"
module=
"Products.DCWorkflow.States"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_mapping
</string>
</key>
<value>
<dictionary/>
</value>
</item>
<item>
<key>
<string>
_objects
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
states
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/states/cleaned.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"StateDefinition"
module=
"Products.DCWorkflow.States"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
cleaned
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Cleaned
</string>
</value>
</item>
<item>
<key>
<string>
transitions
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
type_list
</string>
</key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/states/draft.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"StateDefinition"
module=
"Products.DCWorkflow.States"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
draft
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Draft
</string>
</value>
</item>
<item>
<key>
<string>
transitions
</string>
</key>
<value>
<tuple>
<string>
cleanup
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
type_list
</string>
</key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/transitions.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Transitions"
module=
"Products.DCWorkflow.Transitions"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_mapping
</string>
</key>
<value>
<dictionary/>
</value>
</item>
<item>
<key>
<string>
_objects
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
transitions
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/transitions/cleanup.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"TransitionDefinition"
module=
"Products.DCWorkflow.Transitions"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
actbox_category
</string>
</key>
<value>
<string>
workflow
</string>
</value>
</item>
<item>
<key>
<string>
actbox_icon
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
actbox_name
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
actbox_url
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
after_script_name
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
guard
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
cleanup
</string>
</value>
</item>
<item>
<key>
<string>
new_state_id
</string>
</key>
<value>
<string>
cleaned
</string>
</value>
</item>
<item>
<key>
<string>
script_name
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
trigger_type
</string>
</key>
<value>
<int>
2
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Guard"
module=
"Products.DCWorkflow.Guard"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
permissions
</string>
</key>
<value>
<tuple>
<string>
Modify portal content
</string>
</tuple>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Variables"
module=
"Products.DCWorkflow.Variables"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_mapping
</string>
</key>
<value>
<dictionary/>
</value>
</item>
<item>
<key>
<string>
_objects
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
variables
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/action.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"VariableDefinition"
module=
"Products.DCWorkflow.Variables"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
default_expr
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_value
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Transition id
</string>
</value>
</item>
<item>
<key>
<string>
for_catalog
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
for_status
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
action
</string>
</value>
</item>
<item>
<key>
<string>
info_guard
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
update_always
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Expression"
module=
"Products.CMFCore.Expression"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
text
</string>
</key>
<value>
<string>
transition/getId|nothing
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/actor.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"VariableDefinition"
module=
"Products.DCWorkflow.Variables"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
default_expr
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_value
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Name of the user who performed transition
</string>
</value>
</item>
<item>
<key>
<string>
for_catalog
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
for_status
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
actor
</string>
</value>
</item>
<item>
<key>
<string>
info_guard
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
update_always
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Expression"
module=
"Products.CMFCore.Expression"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
text
</string>
</key>
<value>
<string>
user/getIdOrUserName
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/comment.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"VariableDefinition"
module=
"Products.DCWorkflow.Variables"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
default_expr
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_value
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Comment about transition
</string>
</value>
</item>
<item>
<key>
<string>
for_catalog
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
for_status
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
comment
</string>
</value>
</item>
<item>
<key>
<string>
info_guard
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
update_always
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Expression"
module=
"Products.CMFCore.Expression"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
text
</string>
</key>
<value>
<string>
python:state_change.kwargs.get(\'comment\', \'\')
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/error_message.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"VariableDefinition"
module=
"Products.DCWorkflow.Variables"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
default_expr
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
default_value
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Error message if validation failed
</string>
</value>
</item>
<item>
<key>
<string>
for_catalog
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
for_status
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
error_message
</string>
</value>
</item>
<item>
<key>
<string>
info_guard
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
update_always
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/history.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"VariableDefinition"
module=
"Products.DCWorkflow.Variables"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
default_expr
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_value
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Provides access to workflow history
</string>
</value>
</item>
<item>
<key>
<string>
for_catalog
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
for_status
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
history
</string>
</value>
</item>
<item>
<key>
<string>
info_guard
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
update_always
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Expression"
module=
"Products.CMFCore.Expression"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
text
</string>
</key>
<value>
<string>
state_change/getHistory
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/portal_type.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"VariableDefinition"
module=
"Products.DCWorkflow.Variables"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
default_expr
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
default_value
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Portal type (used as filter for worklists)
</string>
</value>
</item>
<item>
<key>
<string>
for_catalog
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
<item>
<key>
<string>
for_status
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
portal_type
</string>
</value>
</item>
<item>
<key>
<string>
info_guard
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
update_always
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/variables/time.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"VariableDefinition"
module=
"Products.DCWorkflow.Variables"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
default_expr
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_value
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Transition timestamp
</string>
</value>
</item>
<item>
<key>
<string>
for_catalog
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
for_status
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
time
</string>
</value>
</item>
<item>
<key>
<string>
info_guard
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
update_always
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Expression"
module=
"Products.CMFCore.Expression"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
text
</string>
</key>
<value>
<string>
state_change/getDateTime
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/WorkflowTemplateItem/portal_workflow/slapos_software_release_cleanup_workflow/worklists.xml
0 → 100644
View file @
b08a0c36
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Worklists"
module=
"Products.DCWorkflow.Worklists"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_mapping
</string>
</key>
<value>
<dictionary/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
worklists
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/bt/template_path_list
View file @
b08a0c36
...
...
@@ -5,6 +5,7 @@ notification_message_module/slapos_upgrade_hosting_subscription_notification
portal_alarms/slapos_manage_software_catalog
portal_alarms/slapos_pdm_auto_cancel_upgrade_decision
portal_alarms/slapos_pdm_computer_create_upgrade_decision
portal_alarms/slapos_pdm_destroy_software_installation_with_archived_software_release
portal_alarms/slapos_pdm_hosting_subscription_create_upgrade_decision
portal_alarms/slapos_pdm_upgrade_decision_process_planned
portal_alarms/slapos_pdm_upgrade_decision_process_started
...
...
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/bt/template_portal_type_workflow_chain_list
View file @
b08a0c36
Software Product | -validation_workflow
Software Product | commerce_validation_workflow
Software Release | slapos_software_release_cleanup_workflow
Upgrade Decision | edit_workflow
Upgrade Decision | ticket_interaction_workflow
Upgrade Decision | upgrade_decision_workflow
\ No newline at end of file
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/bt/template_test_id_list
View file @
b08a0c36
test.erp5.testSlapOSPDMAlarm
test.erp5.testSlapOSPDMSkins
\ No newline at end of file
test.erp5.testSlapOSPDMSkins
test.erp5.testSlapOSPDMDestroySoftwareInstallationWithArchivedSoftwareReleaseAlarm
\ No newline at end of file
This diff is collapsed.
Click to expand it.
master/bt5/slapos_pdm/bt/template_workflow_id_list
View file @
b08a0c36
slapos_software_release_cleanup_workflow
upgrade_decision_workflow
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment