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
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Romain Courteaud
slapos.core
Commits
92cb8f1c
Commit
92cb8f1c
authored
Nov 08, 2022
by
Romain Courteaud
🐸
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
slapos_cloud: add Project_getSoftwareProductPredicateList
parent
d46cef4e
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
107 additions
and
15 deletions
+107
-15
master/bt5/slapos_cloud/SkinTemplateItem/portal_skins/slapos_cloud/Person_findPartition.py
...ateItem/portal_skins/slapos_cloud/Person_findPartition.py
+5
-15
master/bt5/slapos_cloud/SkinTemplateItem/portal_skins/slapos_cloud/Project_getSoftwareProductPredicateList.py
...s/slapos_cloud/Project_getSoftwareProductPredicateList.py
+40
-0
master/bt5/slapos_cloud/SkinTemplateItem/portal_skins/slapos_cloud/Project_getSoftwareProductPredicateList.xml
.../slapos_cloud/Project_getSoftwareProductPredicateList.xml
+62
-0
No files found.
master/bt5/slapos_cloud/SkinTemplateItem/portal_skins/slapos_cloud/Person_findPartition.py
View file @
92cb8f1c
...
...
@@ -23,8 +23,6 @@ else:
software_instance_portal_type
)
### Step 1, check where the allocation is allowed
from
Products.CMFCore.utils
import
getToolByName
domain_tool
=
getToolByName
(
portal
,
'portal_domains'
)
# XXX prototype for now
tmp_instance
=
portal
.
portal_trash
.
newContent
(
...
...
@@ -40,22 +38,14 @@ software_product, release_variation, type_variation = tmp_instance.InstanceTree_
if
software_product
is
None
:
raise
ValueError
(
'No Software Product matching'
)
tmp_context
=
portal
.
portal_trash
.
newContent
(
portal_type
=
'Movement'
,
temp_object
=
1
,
resource_value
=
software_product
,
software_type_value
=
type_variation
,
software_release_value
=
release_variation
,
allocation_cell_list
=
software_product
.
getFollowUpValue
().
Project_getSoftwareProductPredicateList
(
software_product
=
software_product
,
software_product_type
=
type_variation
,
software_product_release
=
release_variation
,
destination_value
=
context
,
destination_project_value
=
software_product
.
getFollowUpValue
(),
start_date
=
DateTime
()
predicate_portal_type
=
'Allocation Supply Cell'
)
allocation_cell_list
=
[
x
.
getObject
()
for
x
in
\
domain_tool
.
searchPredicateList
(
tmp_context
,
portal_type
=
[
'Allocation Supply Cell'
])
if
x
.
isAllocable
()]
#context.log('allocation_cell_list %s' % str(allocation_cell_list))
if
not
allocation_cell_list
:
raise
ValueError
(
'No Allocation Supply allowing this operation'
)
...
...
master/bt5/slapos_cloud/SkinTemplateItem/portal_skins/slapos_cloud/Project_getSoftwareProductPredicateList.py
0 → 100644
View file @
92cb8f1c
from
Products.CMFCore.utils
import
getToolByName
project
=
context
portal
=
project
.
getPortalObject
()
domain_tool
=
getToolByName
(
portal
,
'portal_domains'
)
tested_base_category_list
=
[
'destination'
,
'destination_project'
]
if
software_product
is
not
None
:
tested_base_category_list
.
append
(
'resource'
)
if
software_product_type
is
not
None
:
tested_base_category_list
.
append
(
'software_type'
)
if
software_product_release
is
not
None
:
tested_base_category_list
.
append
(
'software_release'
)
if
destination_value
is
None
:
destination_value
=
portal
.
portal_membership
.
getAuthenticatedMember
().
getUserValue
()
if
len
(
tested_base_category_list
)
==
5
:
tested_base_category_list
=
None
if
predicate_portal_type
is
None
:
predicate_portal_type
=
'Allocation Supply Cell'
tmp_context
=
portal
.
portal_trash
.
newContent
(
portal_type
=
'Movement'
,
temp_object
=
1
,
resource_value
=
software_product
,
software_type_value
=
software_product_type
,
software_release_value
=
software_product_release
,
destination_value
=
destination_value
,
destination_project_value
=
project
,
start_date
=
DateTime
()
)
return
[
x
.
getObject
()
for
x
in
domain_tool
.
searchPredicateList
(
tmp_context
,
portal_type
=
predicate_portal_type
,
tested_base_category_list
=
tested_base_category_list
)]
master/bt5/slapos_cloud/SkinTemplateItem/portal_skins/slapos_cloud/Project_getSoftwareProductPredicateList.xml
0 → 100644
View file @
92cb8f1c
<?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>
software_product=None, software_product_type=None, software_product_release=None, destination_value=None, predicate_portal_type=None
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
Project_getSoftwareProductPredicateList
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
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