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
22
Merge Requests
22
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
c01fe048
Commit
c01fe048
authored
Nov 01, 2018
by
Bryton Lacquement
🚪
1
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wip
parent
c3ddde23
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
26 additions
and
28 deletions
+26
-28
slapos/grid/promise/generic.py
slapos/grid/promise/generic.py
+3
-3
slapos/grid/utils.py
slapos/grid/utils.py
+1
-2
slapos/proxy/views.py
slapos/proxy/views.py
+22
-23
No files found.
slapos/grid/promise/generic.py
View file @
c01fe048
...
@@ -230,9 +230,9 @@ class GenericPromise(object):
...
@@ -230,9 +230,9 @@ class GenericPromise(object):
"""
"""
Call bang if requested
Call bang if requested
"""
"""
if
self
.
__config
.
has_key
(
'master-url'
)
and
\
if
'master-url'
in
self
.
__config
and
\
self
.
__config
.
has_key
(
'partition-id'
)
and
\
'partition-in'
in
self
.
__config
and
\
self
.
__config
.
has_key
(
'computer-id'
)
:
'computer-id'
in
self
.
__config
:
slap
=
slapos
.
slap
.
slap
()
slap
=
slapos
.
slap
.
slap
()
slap
.
initializeConnection
(
slap
.
initializeConnection
(
...
...
slapos/grid/utils.py
View file @
c01fe048
...
@@ -352,8 +352,7 @@ def launchBuildout(path, buildout_binary, logger,
...
@@ -352,8 +352,7 @@ def launchBuildout(path, buildout_binary, logger,
def
updateFile
(
file_path
,
content
,
mode
=
0o600
):
def
updateFile
(
file_path
,
content
,
mode
=
0o600
):
"""Creates or updates a file with "content" as content."""
"""Creates or updates a file with "content" as content."""
altered
=
False
altered
=
False
if
isinstance
(
content
,
six
.
text_type
):
content
=
content
.
encode
(
'utf-8'
)
content
=
content
.
encode
(
'utf-8'
)
if
not
(
os
.
path
.
isfile
(
file_path
))
or
\
if
not
(
os
.
path
.
isfile
(
file_path
))
or
\
not
(
hashlib
.
md5
(
open
(
file_path
,
'rb'
).
read
()).
digest
()
==
not
(
hashlib
.
md5
(
open
(
file_path
,
'rb'
).
read
()).
digest
()
==
hashlib
.
md5
(
content
).
digest
()):
hashlib
.
md5
(
content
).
digest
()):
...
...
slapos/proxy/views.py
View file @
c01fe048
...
@@ -312,8 +312,8 @@ def loadComputerConfigurationFromXML():
...
@@ -312,8 +312,8 @@ def loadComputerConfigurationFromXML():
@
app
.
route
(
'/registerComputerPartition'
,
methods
=
[
'GET'
])
@
app
.
route
(
'/registerComputerPartition'
,
methods
=
[
'GET'
])
def
registerComputerPartition
():
def
registerComputerPartition
():
computer_reference
=
request
.
args
[
'computer_reference'
]
computer_reference
=
unicode2str
(
request
.
args
[
'computer_reference'
])
computer_partition_reference
=
request
.
args
[
'computer_partition_reference'
]
computer_partition_reference
=
unicode2str
(
request
.
args
[
'computer_partition_reference'
])
partition
=
execute_db
(
'partition'
,
'SELECT * FROM %s WHERE reference=? and computer_reference=?'
,
partition
=
execute_db
(
'partition'
,
'SELECT * FROM %s WHERE reference=? and computer_reference=?'
,
[
computer_partition_reference
,
computer_reference
],
one
=
True
)
[
computer_partition_reference
,
computer_reference
],
one
=
True
)
if
partition
is
None
:
if
partition
is
None
:
...
@@ -381,16 +381,17 @@ def parseRequestComputerPartitionForm(form):
...
@@ -381,16 +381,17 @@ def parseRequestComputerPartitionForm(form):
"""
"""
Parse without intelligence a form from a request(), return it.
Parse without intelligence a form from a request(), return it.
"""
"""
parsed_dict
=
{}
parsed_dict
=
{
parsed_dict
[
'software_release'
]
=
unicode2str
(
form
[
'software_release'
])
'software_release'
:
unicode2str
(
form
[
'software_release'
]),
parsed_dict
[
'software_type'
]
=
unicode2str
(
form
.
get
(
'software_type'
))
'software_type'
:
unicode2str
(
form
.
get
(
'software_type'
)),
parsed_dict
[
'partition_reference'
]
=
unicode2str
(
form
.
get
(
'partition_reference'
,
''
))
'partition_reference'
:
unicode2str
(
form
.
get
(
'partition_reference'
,
''
)),
parsed_dict
[
'partition_id'
]
=
unicode2str
(
form
.
get
(
'computer_partition_id'
,
''
))
'partition_id'
:
unicode2str
(
form
.
get
(
'computer_partition_id'
,
''
)),
parsed_dict
[
'partition_parameter_kw'
]
=
loads
(
unicode2str
(
form
.
get
(
'partition_parameter_xml'
,
EMPTY_DICT_XML
)))
'partition_parameter_kw'
:
loads
(
unicode2str
(
form
.
get
(
'partition_parameter_xml'
,
EMPTY_DICT_XML
))),
parsed_dict
[
'filter_kw'
]
=
loads
(
unicode2str
(
form
.
get
(
'filter_xml'
,
EMPTY_DICT_XML
)))
'filter_kw'
:
loads
(
unicode2str
(
form
.
get
(
'filter_xml'
,
EMPTY_DICT_XML
))),
# Note: currently ignored for slave instance (slave instances
# Note: currently ignored for slave instance (slave instances
# are always started).
# are always started).
parsed_dict
[
'requested_state'
]
=
loads
(
unicode2str
(
form
.
get
(
'state'
)))
'requested_state'
:
loads
(
unicode2str
(
form
.
get
(
'state'
))),
}
return
parsed_dict
return
parsed_dict
...
@@ -411,12 +412,9 @@ def checkIfMasterIsCurrentMaster(master_url):
...
@@ -411,12 +412,9 @@ def checkIfMasterIsCurrentMaster(master_url):
slap
=
slapos
.
slap
.
slap
()
slap
=
slapos
.
slap
.
slap
()
slap
.
initializeConnection
(
master_url
)
slap
.
initializeConnection
(
master_url
)
try
:
try
:
master_run_id
=
slap
.
_connection_helper
.
GET
(
'/getRunId'
)
return
run_id
=
=
slap
.
_connection_helper
.
GET
(
'/getRunId'
)
except
:
except
:
return
False
return
False
if
master_run_id
==
run_id
:
return
True
return
False
@
app
.
route
(
'/getRunId'
,
methods
=
[
'GET'
])
@
app
.
route
(
'/getRunId'
,
methods
=
[
'GET'
])
def
getRunId
():
def
getRunId
():
...
@@ -691,15 +689,16 @@ def requestSlave(software_release, software_type, partition_reference, partition
...
@@ -691,15 +689,16 @@ def requestSlave(software_release, software_type, partition_reference, partition
# Add slave to partition slave_list if not present else replace information
# Add slave to partition slave_list if not present else replace information
slave_instance_list
=
partition
[
'slave_instance_list'
]
slave_instance_list
=
partition
[
'slave_instance_list'
]
if
slave_instance_list
is
None
:
if
slave_instance_list
:
slave_instance_list
=
[]
else
:
slave_instance_list
=
loads
(
slave_instance_list
)
slave_instance_list
=
loads
(
slave_instance_list
)
for
x
in
slave_instance_list
:
for
i
,
x
in
enumerate
(
slave_instance_list
)
:
if
x
[
'slave_reference'
]
==
slave_reference
:
if
x
[
'slave_reference'
]
==
slave_reference
:
slave_instance_list
.
remove
(
x
)
slave_instance_list
[
i
]
=
new_slave
break
slave_instance_list
.
append
(
new_slave
)
else
:
slave_instance_list
.
append
(
new_slave
)
else
:
slave_instance_list
=
[
new_slave
]
# Update slave_instance_list in database
# Update slave_instance_list in database
args
=
[]
args
=
[]
...
...
Bryton Lacquement
🚪
@bminusl
mentioned in commit
cea99f88
·
Nov 02, 2018
mentioned in commit
cea99f88
mentioned in commit cea99f88dd7e1daf2d7a05f94b0d6a470bc72e1c
Toggle commit list
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