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
0
Merge Requests
0
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
Roque
slapos.core
Commits
ab0d27e6
Commit
ab0d27e6
authored
May 12, 2021
by
Xavier Thompson
Browse files
Options
Browse Files
Download
Plain Diff
slapproxy: Add local software release path
See merge request
nexedi/slapos.core!288
parents
a01eb331
dd57a2cf
Changes
10
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
420 additions
and
98 deletions
+420
-98
slapos/cli/proxy_start.py
slapos/cli/proxy_start.py
+2
-0
slapos/proxy/__init__.py
slapos/proxy/__init__.py
+1
-0
slapos/proxy/schema.sql
slapos/proxy/schema.sql
+6
-1
slapos/proxy/views.py
slapos/proxy/views.py
+35
-1
slapos/slap/standalone.py
slapos/slap/standalone.py
+4
-0
slapos/tests/test_slapproxy.py
slapos/tests/test_slapproxy.py
+163
-23
slapos/tests/test_slapproxy/database_dump_version_14.sql
slapos/tests/test_slapproxy/database_dump_version_14.sql
+125
-0
slapos/tests/test_slapproxy/database_dump_version_current.sql
...os/tests/test_slapproxy/database_dump_version_current.sql
+74
-70
slapos/tests/test_slapproxy/generate_dump.sh
slapos/tests/test_slapproxy/generate_dump.sh
+7
-0
slapos/tests/test_slapproxy/slapos_multimaster.cfg.in
slapos/tests/test_slapproxy/slapos_multimaster.cfg.in
+3
-3
No files found.
slapos/cli/proxy_start.py
View file @
ab0d27e6
...
...
@@ -47,6 +47,8 @@ class ProxyStartCommand(ConfigCommand):
help
=
'Port to use'
)
ap
.
add_argument
(
'--host'
,
help
=
'Host to use'
)
ap
.
add_argument
(
'--local-software-release-root'
,
help
=
'Root path for local Software Releases'
)
return
ap
...
...
slapos/proxy/__init__.py
View file @
ab0d27e6
...
...
@@ -93,6 +93,7 @@ def setupFlaskConfiguration(conf):
app
.
config
[
'DATABASE_URI'
]
=
conf
.
database_uri
app
.
config
[
'software_product_list'
]
=
conf
.
software_product_list
app
.
config
[
'multimaster'
]
=
conf
.
multimaster
app
.
config
[
'local_software_release_root'
]
=
getattr
(
conf
,
'local_software_release_root'
,
None
)
def
connectDB
():
# if first connection, create an empty db at DATABASE_URI path
...
...
slapos/proxy/schema.sql
View file @
ab0d27e6
--version:14
--version:15
CREATE
TABLE
IF
NOT
EXISTS
local_software_release_root
%
(
version
)
s
(
path
VARCHAR
(
255
)
);
INSERT
INTO
local_software_release_root
%
(
version
)
s
VALUES
(
NULL
);
CREATE
TABLE
IF
NOT
EXISTS
software
%
(
version
)
s
(
url
VARCHAR
(
255
),
computer_reference
VARCHAR
(
255
)
DEFAULT
'%(computer)s'
,
...
...
slapos/proxy/views.py
View file @
ab0d27e6
...
...
@@ -32,6 +32,7 @@ import random
import
string
import
time
import
re
import
os
from
datetime
import
datetime
from
slapos.slap.slap
import
Computer
,
ComputerPartition
,
\
SoftwareRelease
,
SoftwareInstance
,
NotFoundError
...
...
@@ -177,7 +178,12 @@ def _upgradeDatabaseIfNeeded():
# Migrate all data to new tables
app
.
logger
.
info
(
'Old schema detected: Migrating old tables...'
)
for
table
in
(
'software'
,
'computer'
,
'partition'
,
'slave'
,
'partition_network'
):
table_list
=
(
'software'
,
'computer'
,
'partition'
,
'slave'
,
'partition_network'
)
if
int
(
current_schema_version
)
>=
11
:
table_list
+=
(
'forwarded_partition_request'
,)
if
int
(
current_schema_version
)
>=
15
:
table_list
+=
(
'local_software_release_root'
,)
for
table
in
table_list
:
for
row
in
execute_db
(
table
,
'SELECT * from %s'
,
db_version
=
current_schema_version
):
columns
=
', '
.
join
(
row
.
keys
())
placeholders
=
':'
+
', :'
.
join
(
row
.
keys
())
...
...
@@ -188,6 +194,33 @@ def _upgradeDatabaseIfNeeded():
g
.
db
.
execute
(
"DROP table %s"
%
previous_table
)
g
.
db
.
commit
()
def
_updateLocalSoftwareReleaseRootPathIfNeeded
():
"""
Update the local software release root path if it changed,
and rebase all URLs in the database relatively to the new path.
"""
# Retrieve the current root path and replace it with the new one
current_root_path
=
execute_db
(
'local_software_release_root'
,
'SELECT * from %s'
,
one
=
True
)[
'path'
]
or
os
.
sep
new_root_path
=
app
.
config
[
'local_software_release_root'
]
or
os
.
sep
execute_db
(
'local_software_release_root'
,
'UPDATE %s SET path=?'
,
[
new_root_path
])
# Rebase all URLs relative to the new root path
if
current_root_path
!=
new_root_path
:
app
.
logger
.
info
(
'Updating local software release root path: %s --> %s'
,
current_root_path
,
new_root_path
)
def
migrate_url
(
url
):
if
not
url
or
urlparse
(
url
).
scheme
:
app
.
logger
.
debug
(
'Migrate URL ? N: %s is not a path'
,
url
)
return
url
rel
=
os
.
path
.
relpath
(
url
,
current_root_path
)
if
rel
.
startswith
(
os
.
pardir
+
os
.
sep
):
app
.
logger
.
debug
(
'Migrate URL ? N: %s is not a subpath'
,
url
)
return
url
new
=
os
.
path
.
join
(
new_root_path
,
rel
)
app
.
logger
.
debug
(
'Migrate URL ? Y: %s -> %s'
,
url
,
new
)
return
new
g
.
db
.
create_function
(
'migrate_url'
,
1
,
migrate_url
)
execute_db
(
'software'
,
'UPDATE %s SET url=migrate_url(url)'
)
execute_db
(
'partition'
,
'UPDATE %s SET software_release=migrate_url(software_release)'
)
is_schema_already_executed
=
False
@
app
.
before_request
def
before_request
():
...
...
@@ -195,6 +228,7 @@ def before_request():
global
is_schema_already_executed
if
not
is_schema_already_executed
:
_upgradeDatabaseIfNeeded
()
_updateLocalSoftwareReleaseRootPathIfNeeded
()
is_schema_already_executed
=
True
...
...
slapos/slap/standalone.py
View file @
ab0d27e6
...
...
@@ -211,6 +211,7 @@ class SlapOSConfigWriter(ConfigWriter):
host = {standalone_slapos._server_ip}
port = {standalone_slapos._server_port}
database_uri = {standalone_slapos._proxy_database}
local_software_release_root = {standalone_slapos._local_software_release_root}
{partition_forward_configuration}
"""
).
format
(
**
locals
()))
...
...
@@ -318,6 +319,7 @@ class StandaloneSlapOS(object):
shared_part_root
=
None
,
partition_forward_configuration
=
(),
slapos_bin
=
'slapos'
,
local_software_release_root
=
os
.
sep
,
):
# type: (str, str, int, str, Iterable[str], Optional[str], Optional[str], Optional[str], Iterable[Union[PartitionForwardConfiguration, PartitionForwardAsPartitionConfiguration]]) -> None
"""Constructor, creates a standalone slapos in `base_directory`.
...
...
@@ -332,6 +334,7 @@ class StandaloneSlapOS(object):
* `shared_part_root` -- directory to hold shared parts software, default to "shared" in `base_directory`.
* `partition_forward_configuration` -- configuration of partition request forwarding to external SlapOS master.
* `slapos_bin` -- slapos executable to use, default to "slapos" (thus depending on the runtime PATH).
* `local_software_release_root` -- root for local Software Releases paths in the SlapOS proxy, default to `/`.
Error cases:
* `PathTooDeepError` when `base_directory` is too deep. Because of limitation
...
...
@@ -344,6 +347,7 @@ class StandaloneSlapOS(object):
self
.
_server_ip
=
server_ip
self
.
_server_port
=
server_port
self
.
_master_url
=
"http://{server_ip}:{server_port}"
.
format
(
**
locals
())
self
.
_local_software_release_root
=
local_software_release_root
self
.
_base_directory
=
base_directory
self
.
_shared_part_list
=
list
(
shared_part_list
)
...
...
slapos/tests/test_slapproxy.py
View file @
ab0d27e6
...
...
@@ -79,35 +79,39 @@ class BasicMixin(object):
Will set files and start slapproxy
"""
self
.
_tempdir
=
tempfile
.
mkdtemp
()
self
.
_rootdir
=
self
.
initRootDir
()
logging
.
basicConfig
(
level
=
logging
.
DEBUG
)
self
.
setFiles
()
self
.
startProxy
()
os
.
environ
.
pop
(
'SLAPGRID_INSTANCE_ROOT'
,
None
)
def
initRootDir
(
self
):
return
self
.
_tempdir
def
createSlapOSConfigurationFile
(
self
):
with
open
(
self
.
slapos_cfg
,
'w'
)
as
f
:
f
.
write
(
"""[slapos]
software_root = %(
temp
dir)s/opt/slapgrid
instance_root = %(
temp
dir)s/srv/slapgrid
software_root = %(
root
dir)s/opt/slapgrid
instance_root = %(
root
dir)s/srv/slapgrid
master_url = %(proxyaddr)s
computer_id = computer
[slapproxy]
host = 127.0.0.1
port = 8080
database_uri = %(
temp
dir)s/lib/proxy.db
"""
%
{
'
tempdir'
:
self
.
_temp
dir
,
'proxyaddr'
:
self
.
proxyaddr
})
database_uri = %(
root
dir)s/lib/proxy.db
"""
%
{
'
rootdir'
:
self
.
_root
dir
,
'proxyaddr'
:
self
.
proxyaddr
})
def
setFiles
(
self
):
"""
Set environment to run slapproxy
"""
self
.
slapos_cfg
=
os
.
path
.
join
(
self
.
_
temp
dir
,
'slapos.cfg'
)
self
.
proxy_db
=
os
.
path
.
join
(
self
.
_
temp
dir
,
'lib'
,
'proxy.db'
)
self
.
slapos_cfg
=
os
.
path
.
join
(
self
.
_
root
dir
,
'slapos.cfg'
)
self
.
proxy_db
=
os
.
path
.
join
(
self
.
_
root
dir
,
'lib'
,
'proxy.db'
)
self
.
proxyaddr
=
'http://localhost:80/'
self
.
computer_id
=
'computer'
self
.
createSlapOSConfigurationFile
()
for
directory
in
[
'opt'
,
'srv'
,
'lib'
]:
path
=
os
.
path
.
join
(
self
.
_
temp
dir
,
directory
)
path
=
os
.
path
.
join
(
self
.
_
root
dir
,
directory
)
os
.
mkdir
(
path
)
def
startProxy
(
self
):
...
...
@@ -1192,16 +1196,16 @@ class CliMasterMixin(MasterMixin):
self
.
proxyaddr
=
'http://%s:8080'
%
host
with
open
(
self
.
slapos_cfg
,
'w'
)
as
f
:
f
.
write
(
"""[slapos]
software_root = %(
temp
dir)s/opt/slapgrid
instance_root = %(
temp
dir)s/srv/slapgrid
software_root = %(
root
dir)s/opt/slapgrid
instance_root = %(
root
dir)s/srv/slapgrid
master_url = %(proxyaddr)s
master_rest_url = %(proxyaddr)s/hateoas
computer_id = computer
[slapproxy]
host = %(host)s
port = 8080
database_uri = %(
temp
dir)s/lib/proxy.db
"""
%
{
'
tempdir'
:
self
.
_temp
dir
,
'proxyaddr'
:
self
.
proxyaddr
,
'host'
:
host
})
database_uri = %(
root
dir)s/lib/proxy.db
"""
%
{
'
rootdir'
:
self
.
_root
dir
,
'proxyaddr'
:
self
.
proxyaddr
,
'host'
:
host
})
def
cliDoSlapos
(
self
,
command
,
method
=
subprocess
.
check_output
,
**
kwargs
):
return
method
(
...
...
@@ -1317,7 +1321,7 @@ class TestCliInformation(CliMasterMixin):
],
)
try
:
output2
=
self
.
cliDoSlapos
((
'service'
,
'info'
,
'MyInstance2'
),
stderr
=
subprocess
.
STDOUT
)
self
.
cliDoSlapos
((
'service'
,
'info'
,
'MyInstance2'
),
stderr
=
subprocess
.
STDOUT
)
self
.
fail
()
except
subprocess
.
CalledProcessError
as
e
:
self
.
assertIn
(
'Instance MyInstance2 does not exist.'
,
e
.
output
)
...
...
@@ -1655,7 +1659,7 @@ class TestMultiMasterSupport(MasterMixin):
self
.
db
=
sqlite_connect
(
self
.
proxy_db
)
self
.
external_slapproxy_configuration_file_location
=
os
.
path
.
join
(
self
.
_
temp
dir
,
'external_slapos.cfg'
)
self
.
_
root
dir
,
'external_slapos.cfg'
)
self
.
createExternalProxyConfigurationFile
()
self
.
startExternalProxy
()
...
...
@@ -1669,9 +1673,9 @@ computer_id = %(external_computer_id)s
[slapproxy]
host = %(host)s
port = %(port)s
database_uri = %(
temp
dir)s/lib/external_proxy.db
database_uri = %(
root
dir)s/lib/external_proxy.db
"""
%
{
'
tempdir'
:
self
.
_temp
dir
,
'
rootdir'
:
self
.
_root
dir
,
'host'
:
self
.
external_proxy_host
,
'port'
:
self
.
external_proxy_port
,
'external_computer_id'
:
self
.
external_computer_id
...
...
@@ -1682,16 +1686,15 @@ database_uri = %(tempdir)s/lib/external_proxy.db
Start external slapproxy
"""
logging
.
getLogger
().
info
(
'Starting external proxy, listening to %s:%s'
%
(
self
.
external_proxy_host
,
self
.
external_proxy_port
))
# XXX This uses a hack to run current code of slapos.core
import
slapos
self
.
external_proxy_process
=
subprocess
.
Popen
(
[
sys
.
executable
,
'
%s/../cli/entry.py'
%
os
.
path
.
dirname
(
slapos
.
tests
.
__file__
)
,
sys
.
executable
,
'
-m'
,
'slapos.cli.entry'
,
'proxy'
,
'start'
,
'--cfg'
,
self
.
external_slapproxy_configuration_file_location
],
stdout
=
subprocess
.
DEVNULL
,
stderr
=
subprocess
.
DEVNULL
,
env
=
{
"PYTHONPATH"
:
':'
.
join
(
sys
.
path
)}
env
=
{
"PYTHONPATH"
:
':'
.
join
(
sys
.
path
)},
cwd
=
os
.
chdir
(
os
.
path
.
join
(
os
.
path
.
dirname
(
slapos
.
proxy
.
__file__
),
os
.
pardir
,
os
.
pardir
)),
)
# Wait a bit for proxy to be started
attempts
=
0
...
...
@@ -1717,7 +1720,7 @@ database_uri = %(tempdir)s/lib/external_proxy.db
configuration
=
bytes2str
(
pkg_resources
.
resource_string
(
'slapos.tests'
,
os
.
path
.
join
(
'test_slapproxy'
,
'slapos_multimaster.cfg.in'
)
))
%
{
'
tempdir'
:
self
.
_temp
dir
,
'proxyaddr'
:
self
.
proxyaddr
,
'
rootdir'
:
self
.
_root
dir
,
'proxyaddr'
:
self
.
proxyaddr
,
'external_proxy_host'
:
self
.
external_proxy_host
,
'external_proxy_port'
:
self
.
external_proxy_port
}
...
...
@@ -1926,7 +1929,7 @@ database_uri = %(tempdir)s/lib/external_proxy.db
self
.
assertEqual
({},
partition
.
getConnectionParameterDict
())
with
sqlite3
.
connect
(
os
.
path
.
join
(
self
.
_
temp
dir
,
self
.
_
root
dir
,
'lib'
,
'external_proxy.db'
,
))
as
db
:
...
...
@@ -2015,7 +2018,7 @@ database_uri = %(tempdir)s/lib/external_proxy.db
self
.
assertEqual
({},
partition
.
getConnectionParameterDict
())
with
sqlite3
.
connect
(
os
.
path
.
join
(
self
.
_
temp
dir
,
self
.
_
root
dir
,
'lib'
,
'external_proxy.db'
,
))
as
db
:
...
...
@@ -2044,13 +2047,144 @@ database_uri = %(tempdir)s/lib/external_proxy.db
}],
requested_by
)
class
TestLocalSoftwareReleaseRootPathMigration
(
MasterMixin
):
"""
Test local URL adaptation based on the local software release root path.
"""
def
initRootDir
(
self
):
rootdir
=
os
.
path
.
join
(
self
.
_tempdir
,
'0'
)
os
.
mkdir
(
rootdir
)
return
rootdir
def
newRootDir
(
self
):
return
os
.
path
.
join
(
self
.
_tempdir
,
str
(
1
+
int
(
os
.
path
.
basename
(
self
.
_rootdir
))))
def
createSlapOSConfigurationFile
(
self
):
super
(
TestLocalSoftwareReleaseRootPathMigration
,
self
).
createSlapOSConfigurationFile
()
with
open
(
self
.
slapos_cfg
,
'a'
)
as
f
:
f
.
write
(
"
\
n
local_software_release_root = %s/opt"
%
self
.
_rootdir
)
def
moveProxy
(
self
,
rootdir
=
None
):
if
not
rootdir
:
rootdir
=
self
.
newRootDir
()
os
.
rename
(
self
.
_rootdir
,
rootdir
)
self
.
_rootdir
=
rootdir
self
.
slapos_cfg
=
os
.
path
.
join
(
self
.
_rootdir
,
'slapos.cfg'
)
self
.
proxy_db
=
os
.
path
.
join
(
self
.
_rootdir
,
'lib'
,
'proxy.db'
)
self
.
createSlapOSConfigurationFile
()
views
.
is_schema_already_executed
=
False
self
.
startProxy
()
os
.
environ
.
pop
(
'SLAPGRID_INSTANCE_ROOT'
,
None
)
def
assertSoftwareUrls
(
self
,
*
expected_urls
):
sr_list
=
tuple
(
sr
.
getURI
()
for
sr
in
self
.
getFullComputerInformation
().
_software_release_list
)
self
.
assertEqual
(
sr_list
,
expected_urls
)
def
assertPartitionUrl
(
self
,
partition_id
,
expected_url
):
self
.
assertEqual
(
self
.
getPartitionInformation
(
partition_id
).
getSoftwareRelease
().
getURI
(),
expected_url
)
def
checkSupplyUrl
(
self
,
initial_url
,
expected_url
,
rootdir
=
None
):
self
.
supply
(
initial_url
)
self
.
assertSoftwareUrls
(
initial_url
)
self
.
moveProxy
(
rootdir
)
self
.
assertSoftwareUrls
(
expected_url
)
def
checkRequestUrl
(
self
,
initial_url
,
expected_url
,
rootdir
=
None
):
self
.
format_for_number_of_partitions
(
1
)
partition
=
self
.
request
(
initial_url
,
None
,
'MyInstance'
,
'slappart0'
)
self
.
assertPartitionUrl
(
partition
.
_partition_id
,
initial_url
)
self
.
moveProxy
(
rootdir
)
self
.
assertPartitionUrl
(
partition
.
_partition_id
,
expected_url
)
def
test_supply_local_url
(
self
):
initial_url
=
os
.
path
.
join
(
self
.
_rootdir
,
'opt'
,
'software.cfg'
)
new_rootdir
=
self
.
newRootDir
()
expected_url
=
os
.
path
.
join
(
new_rootdir
,
'opt'
,
'software.cfg'
)
self
.
checkSupplyUrl
(
initial_url
,
expected_url
,
new_rootdir
)
def
test_supply_not_in_root_url
(
self
):
url
=
os
.
path
.
join
(
self
.
_rootdir
,
'srv'
,
'software.cfg'
)
self
.
checkSupplyUrl
(
url
,
url
)
def
test_supply_http_url
(
self
):
url
=
"http://sr//"
self
.
checkSupplyUrl
(
url
,
url
)
def
test_supply_https_url
(
self
):
url
=
"https://sr//"
self
.
checkSupplyUrl
(
url
,
url
)
def
test_request_local_url
(
self
):
initial_url
=
os
.
path
.
join
(
self
.
_rootdir
,
'opt'
,
'software.cfg'
)
new_rootdir
=
self
.
newRootDir
()
expected_url
=
os
.
path
.
join
(
new_rootdir
,
'opt'
,
'software.cfg'
)
self
.
checkRequestUrl
(
initial_url
,
expected_url
,
new_rootdir
)
def
test_request_not_in_root_url
(
self
):
url
=
os
.
path
.
join
(
self
.
_rootdir
,
'srv'
,
'software.cfg'
)
self
.
checkRequestUrl
(
url
,
url
)
def
test_request_http_url
(
self
):
url
=
"http://sr//"
self
.
checkRequestUrl
(
url
,
url
)
def
test_request_https_url
(
self
):
url
=
"https://sr//"
self
.
checkRequestUrl
(
url
,
url
)
def
checkMultipleMoves
(
self
,
checkUrl
):
initial_url
=
os
.
path
.
join
(
self
.
_rootdir
,
'opt'
,
'software.cfg'
)
for
_
in
range
(
5
):
new_rootdir
=
self
.
newRootDir
()
expected_url
=
os
.
path
.
join
(
new_rootdir
,
'opt'
,
'software.cfg'
)
checkUrl
(
initial_url
,
expected_url
,
new_rootdir
)
initial_url
=
expected_url
def
test_supply_multiple_moves
(
self
):
self
.
checkMultipleMoves
(
self
.
checkSupplyUrl
)
def
test_request_multiple_moves
(
self
):
self
.
checkMultipleMoves
(
self
.
checkRequestUrl
)
def
test_move_logs
(
self
):
local_sr_root
=
os
.
path
.
join
(
self
.
_rootdir
,
'opt'
)
subpath_url
=
os
.
path
.
join
(
local_sr_root
,
'software.cfg'
)
path_not_subpath_url
=
os
.
path
.
join
(
self
.
_rootdir
,
'srv'
,
'software.cfg'
)
http_url
=
"https://sr//"
self
.
format_for_number_of_partitions
(
3
)
for
i
,
initial_url
in
enumerate
((
subpath_url
,
path_not_subpath_url
,
http_url
)):
self
.
supply
(
initial_url
)
self
.
request
(
initial_url
,
None
,
'instance%d'
%
i
,
None
)
self
.
moveProxy
()
new_local_sr_root
=
os
.
path
.
join
(
self
.
_rootdir
,
'opt'
)
new_subpath_url
=
os
.
path
.
join
(
new_local_sr_root
,
'software.cfg'
)
with
mock
.
patch
.
object
(
views
.
app
,
'logger'
)
as
logger
:
# Request something to trigger update
self
.
getFullComputerInformation
()
logger
.
info
.
assert_called_once_with
(
'Updating local software release root path: %s --> %s'
,
local_sr_root
,
new_local_sr_root
,
)
logger
.
debug
.
assert_has_calls
([
mock
.
call
(
'Migrate URL ? Y: %s -> %s'
,
subpath_url
,
new_subpath_url
),
mock
.
call
(
'Migrate URL ? N: %s is not a subpath'
,
path_not_subpath_url
),
mock
.
call
(
'Migrate URL ? N: %s is not a path'
,
http_url
)
]
*
2
,
any_order
=
True
)
class
_MigrationTestCase
(
TestInformation
,
TestRequest
,
TestSlaveRequest
,
TestMultiNodeSupport
):
"""
Test that old database version are automatically migrated without failure
"""
dump_filename
=
NotImplemented
initial_table_list
=
NotImplemented
current_version
=
'1
4
'
current_version
=
'1
5
'
def
setUp
(
self
):
TestInformation
.
setUp
(
self
)
...
...
@@ -2136,6 +2270,7 @@ class _MigrationTestCase(TestInformation, TestRequest, TestSlaveRequest, TestMul
self
.
assertEqual
([
x
[
0
]
for
x
in
table_list
],
[
'computer{}'
.
format
(
self
.
current_version
),
'forwarded_partition_request{}'
.
format
(
self
.
current_version
),
'local_software_release_root{}'
.
format
(
self
.
current_version
),
'partition{}'
.
format
(
self
.
current_version
),
'partition_network{}'
.
format
(
self
.
current_version
),
'slave{}'
.
format
(
self
.
current_version
),
...
...
@@ -2184,4 +2319,9 @@ class TestMigrateVersion13ToLatest(_MigrationTestCase):
initial_table_list
=
[
'computer13'
,
'forwarded_partition_request13'
,
'partition13'
,
'partition_network13'
,
'slave13'
,
'software13'
,
]
class
TestMigrateVersion14ToLatest
(
_MigrationTestCase
):
dump_filename
=
'database_dump_version_14.sql'
initial_table_list
=
[
'computer14'
,
'forwarded_partition_request14'
,
'partition14'
,
'partition_network14'
,
'slave14'
,
'software14'
,
]
del
_MigrationTestCase
slapos/tests/test_slapproxy/database_dump_version_14.sql
0 → 100644
View file @
ab0d27e6
PRAGMA
foreign_keys
=
OFF
;
BEGIN
TRANSACTION
;
CREATE
TABLE
software14
(
url
VARCHAR
(
255
),
computer_reference
VARCHAR
(
255
)
DEFAULT
'computer'
,
requested_state
VARCHAR
(
255
)
DEFAULT
'available'
,
CONSTRAINT
uniq
PRIMARY
KEY
(
url
,
computer_reference
)
);
INSERT
INTO
"software14"
VALUES
(
'/srv/slapgrid//srv//runner/project//slapos/software.cfg'
,
'computer'
,
'available'
);
CREATE
TABLE
computer14
(
reference
VARCHAR
(
255
)
DEFAULT
'computer'
,
address
VARCHAR
(
255
),
netmask
VARCHAR
(
255
),
CONSTRAINT
uniq
PRIMARY
KEY
(
reference
)
);
INSERT
INTO
"computer14"
VALUES
(
'computer'
,
'127.0.0.1'
,
'255.255.255.255'
);
CREATE
TABLE
partition14
(
reference
VARCHAR
(
255
),
computer_reference
VARCHAR
(
255
)
DEFAULT
'computer'
,
slap_state
VARCHAR
(
255
)
DEFAULT
'free'
,
software_release
VARCHAR
(
255
),
xml
TEXT
,
connection_xml
TEXT
,
slave_instance_list
TEXT
,
software_type
VARCHAR
(
255
),
partition_reference
VARCHAR
(
255
),
-- name of the instance
requested_by
VARCHAR
(
255
),
-- only used for debugging,
-- slapproxy does not support proper scope
requested_state
VARCHAR
(
255
)
NOT
NULL
DEFAULT
'started'
,
timestamp
REAL
,
CONSTRAINT
uniq
PRIMARY
KEY
(
reference
,
computer_reference
)
);
INSERT
INTO
"partition14"
VALUES
(
'slappart0'
,
'computer'
,
'busy'
,
'/srv/slapgrid//srv//runner/project//slapos/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="json">{
"site-id": "erp5"
}
}</parameter>
</instance>
'
,
NULL
,
NULL
,
'production'
,
'slapos'
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition14"
VALUES
(
'slappart1'
,
'computer'
,
'busy'
,
'/srv/slapgrid//srv//runner/project//slapos/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance/>
'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="url">mysql://127.0.0.1:45678/erp5</parameter>
</instance>
'
,
NULL
,
'mariadb'
,
'MariaDB DataBase'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition14"
VALUES
(
'slappart2'
,
'computer'
,
'busy'
,
'/srv/slapgrid//srv//runner/project//slapos/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="cloudooo-json"></parameter>
</instance>
'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="url">cloudooo://127.0.0.1:23000/</parameter>
</instance>
'
,
NULL
,
'cloudooo'
,
'Cloudooo'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition14"
VALUES
(
'slappart3'
,
'computer'
,
'busy'
,
'/srv/slapgrid//srv//runner/project//slapos/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance/>
'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="url">memcached://127.0.0.1:11000/</parameter>
</instance>
'
,
NULL
,
'memcached'
,
'Memcached'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition14"
VALUES
(
'slappart4'
,
'computer'
,
'busy'
,
'/srv/slapgrid//srv//runner/project//slapos/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance/>
'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="url">memcached://127.0.0.1:13301/</parameter>
</instance>
'
,
NULL
,
'kumofs'
,
'KumoFS'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition14"
VALUES
(
'slappart5'
,
'computer'
,
'busy'
,
'/srv/slapgrid//srv//runner/project//slapos/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="kumofs-url">memcached://127.0.0.1:13301/</parameter>
<parameter id="memcached-url">memcached://127.0.0.1:11000/</parameter>
<parameter id="cloudooo-url">cloudooo://127.0.0.1:23000/</parameter>
</instance>
'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="url">https://[fc00::1]:10001</parameter>
</instance>
'
,
NULL
,
'tidstorage'
,
'TidStorage'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition14"
VALUES
(
'slappart6'
,
'computer'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition14"
VALUES
(
'slappart7'
,
'computer'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition14"
VALUES
(
'slappart8'
,
'computer'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition14"
VALUES
(
'slappart9'
,
'computer'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
CREATE
TABLE
slave14
(
reference
VARCHAR
(
255
),
-- unique slave reference
computer_reference
VARCHAR
(
255
)
DEFAULT
'computer'
,
connection_xml
TEXT
,
hosted_by
VARCHAR
(
255
),
asked_by
VARCHAR
(
255
)
-- only used for debugging,
-- slapproxy does not support proper scope
);
CREATE
TABLE
partition_network14
(
partition_reference
VARCHAR
(
255
),
computer_reference
VARCHAR
(
255
)
DEFAULT
'computer'
,
reference
VARCHAR
(
255
),
address
VARCHAR
(
255
),
netmask
VARCHAR
(
255
)
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart0'
,
'computer'
,
'slappart0'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart0'
,
'computer'
,
'slappart0'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart1'
,
'computer'
,
'slappart1'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart1'
,
'computer'
,
'slappart1'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart2'
,
'computer'
,
'slappart2'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart2'
,
'computer'
,
'slappart2'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart3'
,
'computer'
,
'slappart3'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart3'
,
'computer'
,
'slappart3'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart4'
,
'computer'
,
'slappart4'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart4'
,
'computer'
,
'slappart4'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart5'
,
'computer'
,
'slappart5'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart5'
,
'computer'
,
'slappart5'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart6'
,
'computer'
,
'slappart6'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart6'
,
'computer'
,
'slappart6'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart7'
,
'computer'
,
'slappart7'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart7'
,
'computer'
,
'slappart7'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart8'
,
'computer'
,
'slappart8'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart8'
,
'computer'
,
'slappart8'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart9'
,
'computer'
,
'slappart9'
,
'127.0.0.1'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network14"
VALUES
(
'slappart9'
,
'computer'
,
'slappart9'
,
'fc00::1'
,
'ffff:ffff:ffff::'
);
CREATE
TABLE
forwarded_partition_request14
(
partition_reference
VARCHAR
(
255
),
-- a.k.a source_instance_id
master_url
VARCHAR
(
255
)
);
COMMIT
;
slapos/tests/test_slapproxy/database_dump_version_current.sql
View file @
ab0d27e6
PRAGMA
foreign_keys
=
OFF
;
BEGIN
TRANSACTION
;
CREATE
TABLE
software14
(
CREATE
TABLE
local_software_release_root15
(
path
VARCHAR
(
255
)
);
INSERT
INTO
"local_software_release_root15"
VALUES
(
'/'
);
CREATE
TABLE
software15
(
url
VARCHAR
(
255
),
computer_reference
VARCHAR
(
255
)
DEFAULT
'slaprunner'
,
requested_state
VARCHAR
(
255
)
DEFAULT
'available'
,
CONSTRAINT
uniq
PRIMARY
KEY
(
url
,
computer_reference
)
);
INSERT
INTO
"software1
4
"
VALUES
(
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/seleniumrunner/software.cfg'
,
'slaprunner'
,
'available'
);
INSERT
INTO
"software1
4
"
VALUES
(
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/evil/software.cfg'
,
'slaprunner'
,
'available'
);
INSERT
INTO
"software1
4
"
VALUES
(
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'slaprunner'
,
'available'
);
CREATE
TABLE
computer1
4
(
INSERT
INTO
"software1
5
"
VALUES
(
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/seleniumrunner/software.cfg'
,
'slaprunner'
,
'available'
);
INSERT
INTO
"software1
5
"
VALUES
(
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/evil/software.cfg'
,
'slaprunner'
,
'available'
);
INSERT
INTO
"software1
5
"
VALUES
(
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'slaprunner'
,
'available'
);
CREATE
TABLE
computer1
5
(
reference
VARCHAR
(
255
)
DEFAULT
'slaprunner'
,
address
VARCHAR
(
255
),
netmask
VARCHAR
(
255
),
CONSTRAINT
uniq
PRIMARY
KEY
(
reference
)
);
INSERT
INTO
"computer1
4
"
VALUES
(
'slaprunner'
,
'10.0.30.235'
,
'255.255.255.255'
);
CREATE
TABLE
partition1
4
(
INSERT
INTO
"computer1
5
"
VALUES
(
'slaprunner'
,
'10.0.30.235'
,
'255.255.255.255'
);
CREATE
TABLE
partition1
5
(
reference
VARCHAR
(
255
),
computer_reference
VARCHAR
(
255
)
DEFAULT
'slaprunner'
,
slap_state
VARCHAR
(
255
)
DEFAULT
'free'
,
...
...
@@ -32,7 +36,7 @@ CREATE TABLE partition14 (
timestamp
REAL
,
CONSTRAINT
uniq
PRIMARY
KEY
(
reference
,
computer_reference
)
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart0'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart0'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">{
"mariadb": {
...
...
@@ -80,7 +84,7 @@ INSERT INTO "partition14" VALUES('slappart0','slaprunner','busy','/srv/slapgrid/
<parameter id="_">{"hosts-dict": {"erp5-cloudooo": "cloudooo.erp5.net", "erp5-smtp": "127.0.0.2", "erp5-catalog-0": "10.0.30.235", "erp5-memcached-volatile": "10.0.30.235", "erp5-memcached-persistent": "10.0.30.235"}, "login-test-runner-url-list": ["https://10.0.30.235:2157/unit_test_0/", "https://10.0.30.235:2157/unit_test_1/", "https://10.0.30.235:2157/unit_test_2/"], "monitor-setup-url": "https://monitor.app.officejs.com/#page=settings_configurator&url=/public/feeds&username=admin&password=password", "family-login-v6": "https://[::1]:2159", "deadlock-debugger-password": "password", "family-login": "https://10.0.30.235:2159", "inituser-login": "zope", "inituser-password": "password", "family-activities": "https://10.0.30.235:2155", "monitor-base-url": "", "site-id": "erp5", "mariadb-test-database-list": ["mysql://testuser_0:testpassword0@10.0.30.235:2099/erp5_test_0", "mysql://testuser_1:testpassword1@10.0.30.235:2099/erp5_test_1", "mysql://testuser_2:testpassword2@10.0.30.235:2099/erp5_test_2", "mysql://testuser_3:testpassword3@10.0.30.235:2099/erp5_test_3", "mysql://testuser_4:testpassword4@10.0.30.235:2099/erp5_test_4", "mysql://testuser_5:testpassword5@10.0.30.235:2099/erp5_test_5", "mysql://testuser_6:testpassword6@10.0.30.235:2099/erp5_test_6", "mysql://testuser_7:testpassword7@10.0.30.235:2099/erp5_test_7", "mysql://testuser_8:testpassword8@10.0.30.235:2099/erp5_test_8", "mysql://testuser_9:testpassword9@10.0.30.235:2099/erp5_test_9", "mysql://testuser_10:testpassword10@10.0.30.235:2099/erp5_test_10", "mysql://testuser_11:testpassword11@10.0.30.235:2099/erp5_test_11"], "mariadb-database-list": ["mysql://user:insecure@10.0.30.235:2099/erp5"], "memcached-volatile-url": "memcached://10.0.30.235:2013/", "memcached-persistent-url": "memcached://10.0.30.235:2003/", "caucase-http-url": "http://[::1]:8890", "activities-test-runner-url-list": ["https://10.0.30.235:2153/unit_test_0/", "https://10.0.30.235:2153/unit_test_1/", "https://10.0.30.235:2153/unit_test_2/"], "family-activities-v6": "https://[::1]:2155"}</parameter>
</instance>
'
,
NULL
,
'default'
,
'slaprunner-dev-local-frontend-2'
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart1'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart1'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">{"use-ipv6": false, "auto-sign-csr-amount": 2, "server-port": 8890, "name": "caucase", "server-https-port": 8891}</parameter>
</instance>
...
...
@@ -89,7 +93,7 @@ INSERT INTO "partition14" VALUES('slappart1','slaprunner','busy','/srv/slapgrid/
<parameter id="_">{"http-url": "http://[::1]:8890", "https-url": "https://[::1]:8891", "init-user": "admin"}</parameter>
</instance>
'
,
NULL
,
'caucase'
,
'caucase'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart2'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart2'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">{"use-ipv6": false, "monitor-passwd": "password", "tcpv4-port": 2000, "name": "memcached-persistent"}</parameter>
</instance>
...
...
@@ -98,7 +102,7 @@ INSERT INTO "partition14" VALUES('slappart2','slaprunner','busy','/srv/slapgrid/
<parameter id="_">{"url": "memcached://10.0.30.235:2003/", "monitor-base-url": ""}</parameter>
</instance>
'
,
NULL
,
'kumofs'
,
'memcached-persistent'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart3'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart3'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">{"use-ipv6": false, "monitor-passwd": "password", "tcpv4-port": 2010, "name": "memcached-volatile", "ram-storage-size": 64}</parameter>
</instance>
...
...
@@ -107,7 +111,7 @@ INSERT INTO "partition14" VALUES('slappart3','slaprunner','busy','/srv/slapgrid/
<parameter id="_">{"url": "memcached://10.0.30.235:2013/", "monitor-base-url": ""}</parameter>
</instance>
'
,
NULL
,
'kumofs'
,
'memcached-volatile'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart4'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart4'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">{"monitor-passwd": "password", "name": "mariadb", "use-ipv6": false, "tcpv4-port": 2099, "test-database-amount": 12, "innodb-log-file-size": 134217728, "slowest-query-threshold": "", "innodb-buffer-pool-size": 1073741824, "max-slowqueries-threshold": 1000}</parameter>
</instance>
...
...
@@ -116,7 +120,7 @@ INSERT INTO "partition14" VALUES('slappart4','slaprunner','busy','/srv/slapgrid/
<parameter id="_">{"monitor-base-url": "", "server-id": 3739295806, "database-list": ["mysql://user:insecure@10.0.30.235:2099/erp5"], "test-database-list": ["mysql://testuser_0:testpassword0@10.0.30.235:2099/erp5_test_0", "mysql://testuser_1:testpassword1@10.0.30.235:2099/erp5_test_1", "mysql://testuser_2:testpassword2@10.0.30.235:2099/erp5_test_2", "mysql://testuser_3:testpassword3@10.0.30.235:2099/erp5_test_3", "mysql://testuser_4:testpassword4@10.0.30.235:2099/erp5_test_4", "mysql://testuser_5:testpassword5@10.0.30.235:2099/erp5_test_5", "mysql://testuser_6:testpassword6@10.0.30.235:2099/erp5_test_6", "mysql://testuser_7:testpassword7@10.0.30.235:2099/erp5_test_7", "mysql://testuser_8:testpassword8@10.0.30.235:2099/erp5_test_8", "mysql://testuser_9:testpassword9@10.0.30.235:2099/erp5_test_9", "mysql://testuser_10:testpassword10@10.0.30.235:2099/erp5_test_10", "mysql://testuser_11:testpassword11@10.0.30.235:2099/erp5_test_11"]}</parameter>
</instance>
'
,
NULL
,
'mariadb'
,
'mariadb'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart5'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart5'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">{"use-ipv6": false, "monitor-passwd": "password", "tcpv4-port": 2100, "name": "zodb", "zodb-dict": {"root": {"family": "1"}}}</parameter>
</instance>
...
...
@@ -125,7 +129,7 @@ INSERT INTO "partition14" VALUES('slappart5','slaprunner','busy','/srv/slapgrid/
<parameter id="_">{"storage-dict": {"root": {"storage": "root", "server": "10.0.30.235:2100"}}, "tidstorage-ip": "", "monitor-base-url": "", "tidstorage-port": ""}</parameter>
</instance>
'
,
NULL
,
'zodb-zeo'
,
'zodb'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart6'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart6'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">{"zodb-dict": {"root": {"storage-dict": {"cache-size": "20MB"}, "mount-point": "/", "type": "zeo", "cache-size": 50000}}, "site-id": "erp5", "webdav": false, "saucelabs-dict": {}, "tidstorage-port": "", "hosts-dict": {}, "hostalias-dict": {}, "large-file-threshold": "10MB", "bt5-repository-url": "/srv/slapgrid/slappart8/srv/runner/software/287375f0cba269902ba1bc50242839d7/parts/erp5/bt5 /srv/slapgrid/slappart8/srv/runner/software/287375f0cba269902ba1bc50242839d7/parts/erp5/product/ERP5/bootstrap", "test-runner-apache-url-list": ["https://10.0.30.235:2153/unit_test_0/", "https://10.0.30.235:2153/unit_test_1/", "https://10.0.30.235:2153/unit_test_2/"], "timezone": "Asia/Tokyo", "cloudooo-url": "https://cloudooo.erp5.net/", "mysql-test-url-list": ["mysql://testuser_0:testpassword0@10.0.30.235:2099/erp5_test_0", "mysql://testuser_1:testpassword1@10.0.30.235:2099/erp5_test_1", "mysql://testuser_2:testpassword2@10.0.30.235:2099/erp5_test_2", "mysql://testuser_3:testpassword3@10.0.30.235:2099/erp5_test_3", "mysql://testuser_4:testpassword4@10.0.30.235:2099/erp5_test_4", "mysql://testuser_5:testpassword5@10.0.30.235:2099/erp5_test_5", "mysql://testuser_6:testpassword6@10.0.30.235:2099/erp5_test_6", "mysql://testuser_7:testpassword7@10.0.30.235:2099/erp5_test_7", "mysql://testuser_8:testpassword8@10.0.30.235:2099/erp5_test_8", "mysql://testuser_9:testpassword9@10.0.30.235:2099/erp5_test_9", "mysql://testuser_10:testpassword10@10.0.30.235:2099/erp5_test_10", "mysql://testuser_11:testpassword11@10.0.30.235:2099/erp5_test_11"], "inituser-password": "password", "deadlock-debugger-password": "password", "port-base": 2200, "longrequest-logger-interval": -1, "memcached-url": "memcached://10.0.30.235:2013/", "smtp-url": "smtp://127.0.0.2:0/", "test-runner-enabled": true, "kumofs-url": "memcached://10.0.30.235:2003/", "inituser-login": "zope", "thread-amount": 2, "zodb-zeo": {"root": {"storage": "root", "server": "10.0.30.235:2100"}}, "id-store-interval": null, "caucase-url": "http://[::1]:8890", "test-runner-node-count": 3, "cloudooo-retry-count": "2", "mysql-url-list": ["mysql://user:insecure@10.0.30.235:2099/erp5"], "wendelin-core-zblk-fmt": "", "timerserver-interval": 1, "monitor-passwd": "password", "name": "activities", "tidstorage-ip": "", "bt5": "erp5_full_text_myisam_catalog erp5_configurator_standard erp5_configurator_maxma_demo erp5_configurator_run_my_doc", "private-dev-shm": "", "developer-list": ["zope"], "use-ipv6": false, "instance-count": 4, "longrequest-logger-timeout": 1}</parameter>
</instance>
...
...
@@ -134,7 +138,7 @@ INSERT INTO "partition14" VALUES('slappart6','slaprunner','busy','/srv/slapgrid/
<parameter id="_">{"hosts-dict": {"erp5-cloudooo": "cloudooo.erp5.net", "erp5-smtp": "127.0.0.2", "erp5-catalog-0": "10.0.30.235", "erp5-memcached-volatile": "10.0.30.235", "erp5-memcached-persistent": "10.0.30.235"}, "test-runner-address-list": [["10.0.30.235", 2200], ["10.0.30.235", 2201], ["10.0.30.235", 2202]], "monitor-base-url": "", "zope-address-list": [["10.0.30.235:2203", 2, false], ["10.0.30.235:2204", 2, false], ["10.0.30.235:2205", 2, false], ["10.0.30.235:2206", 2, false]]}</parameter>
</instance>
'
,
NULL
,
'zope'
,
'zope-activities'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart7'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart7'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">{"zodb-dict": {"root": {"storage-dict": {"cache-size": "20MB"}, "mount-point": "/", "type": "zeo", "cache-size": 50000}}, "site-id": "erp5", "webdav": false, "saucelabs-dict": {}, "tidstorage-port": "", "hosts-dict": {}, "hostalias-dict": {}, "large-file-threshold": "10MB", "bt5-repository-url": "/srv/slapgrid/slappart8/srv/runner/software/287375f0cba269902ba1bc50242839d7/parts/erp5/bt5 /srv/slapgrid/slappart8/srv/runner/software/287375f0cba269902ba1bc50242839d7/parts/erp5/product/ERP5/bootstrap", "test-runner-apache-url-list": ["https://10.0.30.235:2157/unit_test_0/", "https://10.0.30.235:2157/unit_test_1/", "https://10.0.30.235:2157/unit_test_2/"], "timezone": "Asia/Tokyo", "cloudooo-url": "https://cloudooo.erp5.net/", "mysql-test-url-list": ["mysql://testuser_0:testpassword0@10.0.30.235:2099/erp5_test_0", "mysql://testuser_1:testpassword1@10.0.30.235:2099/erp5_test_1", "mysql://testuser_2:testpassword2@10.0.30.235:2099/erp5_test_2", "mysql://testuser_3:testpassword3@10.0.30.235:2099/erp5_test_3", "mysql://testuser_4:testpassword4@10.0.30.235:2099/erp5_test_4", "mysql://testuser_5:testpassword5@10.0.30.235:2099/erp5_test_5", "mysql://testuser_6:testpassword6@10.0.30.235:2099/erp5_test_6", "mysql://testuser_7:testpassword7@10.0.30.235:2099/erp5_test_7", "mysql://testuser_8:testpassword8@10.0.30.235:2099/erp5_test_8", "mysql://testuser_9:testpassword9@10.0.30.235:2099/erp5_test_9", "mysql://testuser_10:testpassword10@10.0.30.235:2099/erp5_test_10", "mysql://testuser_11:testpassword11@10.0.30.235:2099/erp5_test_11"], "inituser-password": "password", "deadlock-debugger-password": "password", "port-base": 2200, "longrequest-logger-interval": -1, "memcached-url": "memcached://10.0.30.235:2013/", "smtp-url": "smtp://127.0.0.2:0/", "test-runner-enabled": true, "kumofs-url": "memcached://10.0.30.235:2003/", "inituser-login": "zope", "thread-amount": 10, "zodb-zeo": {"root": {"storage": "root", "server": "10.0.30.235:2100"}}, "id-store-interval": null, "caucase-url": "http://[::1]:8890", "test-runner-node-count": 3, "cloudooo-retry-count": "2", "mysql-url-list": ["mysql://user:insecure@10.0.30.235:2099/erp5"], "wendelin-core-zblk-fmt": "", "timerserver-interval": 1, "monitor-passwd": "password", "name": "backend", "tidstorage-ip": "", "bt5": "erp5_full_text_myisam_catalog erp5_configurator_standard erp5_configurator_maxma_demo erp5_configurator_run_my_doc", "private-dev-shm": "", "developer-list": ["zope"], "use-ipv6": false, "instance-count": 2, "longrequest-logger-timeout": 1}</parameter>
</instance>
...
...
@@ -143,7 +147,7 @@ INSERT INTO "partition14" VALUES('slappart7','slaprunner','busy','/srv/slapgrid/
<parameter id="_">{"hosts-dict": {"erp5-cloudooo": "cloudooo.erp5.net", "erp5-smtp": "127.0.0.2", "erp5-catalog-0": "10.0.30.235", "erp5-memcached-volatile": "10.0.30.235", "erp5-memcached-persistent": "10.0.30.235"}, "test-runner-address-list": [["10.0.30.235", 2200], ["10.0.30.235", 2201], ["10.0.30.235", 2202]], "monitor-base-url": "", "zope-address-list": [["10.0.30.235:2203", 10, false], ["10.0.30.235:2204", 10, false]]}</parameter>
</instance>
'
,
NULL
,
'zope'
,
'zope-backend'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart8'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart8'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/erp5/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">{"haproxy-server-check-path": "/", "apachedex-configuration": "--erp5-base +erp5 .*/VirtualHostRoot/erp5(/|
\\
?|$) --base +other / --skip-user-agent Zabbix --error-detail --js-embed --quiet", "backend-path-dict": {"activities": "/", "login": "/"}, "name": "balancer", "zope-family-entry-request-zope-activities-test-runner-address-list": [["10.0.30.235", 2200], ["10.0.30.235", 2201], ["10.0.30.235", 2202]], "crl-update-periodicity": "daily", "ssl-authentication-dict": {"activities": false, "login": false}, "zope-family-entry-request-zope-activities": [["10.0.30.235:2203", 2, false], ["10.0.30.235:2204", 2, false], ["10.0.30.235:2205", 2, false], ["10.0.30.235:2206", 2, false]], "zope-family-entry-request-zope-backend": [["10.0.30.235:2203", 10, false], ["10.0.30.235:2204", 10, false]], "zope-family-dict": {"activities": ["zope-family-entry-request-zope-activities"], "login": ["zope-family-entry-request-zope-backend"]}, "zope-family-entry-request-zope-backend-test-runner-address-list": [["10.0.30.235", 2200], ["10.0.30.235", 2201], ["10.0.30.235", 2202]], "ssl": {}, "caucase-url": "http://[::1]:8890", "monitor-passwd": "password", "use-ipv6": false, "apachedex-promise-threshold": 70, "tcpv4-port": 2150}</parameter>
</instance>
...
...
@@ -152,7 +156,7 @@ INSERT INTO "partition14" VALUES('slappart8','slaprunner','busy','/srv/slapgrid/
<parameter id="_">{"activities": "https://10.0.30.235:2155", "login-test-runner-url-list": ["https://10.0.30.235:2157/unit_test_0/", "https://10.0.30.235:2157/unit_test_1/", "https://10.0.30.235:2157/unit_test_2/"], "monitor-base-url": "", "login-v6": "https://[::1]:2159", "activities-v6": "https://[::1]:2155", "login": "https://10.0.30.235:2159", "activities-test-runner-url-list": ["https://10.0.30.235:2153/unit_test_0/", "https://10.0.30.235:2153/unit_test_1/", "https://10.0.30.235:2153/unit_test_2/"]}</parameter>
</instance>
'
,
NULL
,
'balancer'
,
'balancer'
,
'slappart0'
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart9'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/seleniumrunner/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart9'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/seleniumrunner/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance/>
'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
...
...
@@ -160,22 +164,22 @@ INSERT INTO "partition14" VALUES('slappart9','slaprunner','busy','/srv/slapgrid/
<parameter id="display">:123</parameter>
</instance>
'
,
NULL
,
'RootSoftwareInstance'
,
'seleniumrunner'
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart10'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/evil/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart10'
,
'slaprunner'
,
'busy'
,
'/srv/slapgrid/slappart8/srv/runner/project/slapos/software/evil/software.cfg'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance/>'
,
'<?xml version=
''
1.0
''
encoding=
''
utf-8
''
?>
<instance>
<parameter id="_">Ahah this is not json 😜 </parameter>
</instance>
'
,
NULL
,
'RootSoftwareInstance'
,
'evil-instance-with-_-not-json'
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart11'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart12'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart13'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart14'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart15'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart16'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart17'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart18'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
4
"
VALUES
(
'slappart19'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
CREATE
TABLE
slave1
4
(
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart11'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart12'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart13'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart14'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart15'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart16'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart17'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart18'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
INSERT
INTO
"partition1
5
"
VALUES
(
'slappart19'
,
'slaprunner'
,
'free'
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
'started'
,
NULL
);
CREATE
TABLE
slave1
5
(
reference
VARCHAR
(
255
),
-- unique slave reference
computer_reference
VARCHAR
(
255
)
DEFAULT
'slaprunner'
,
connection_xml
TEXT
,
...
...
@@ -183,54 +187,54 @@ CREATE TABLE slave14 (
asked_by
VARCHAR
(
255
)
-- only used for debugging,
-- slapproxy does not support proper scope
);
CREATE
TABLE
partition_network1
4
(
CREATE
TABLE
partition_network1
5
(
partition_reference
VARCHAR
(
255
),
computer_reference
VARCHAR
(
255
)
DEFAULT
'slaprunner'
,
reference
VARCHAR
(
255
),
address
VARCHAR
(
255
),
netmask
VARCHAR
(
255
)
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart0'
,
'slaprunner'
,
'slappart0'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart0'
,
'slaprunner'
,
'slappart0'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart1'
,
'slaprunner'
,
'slappart1'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart1'
,
'slaprunner'
,
'slappart1'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart2'
,
'slaprunner'
,
'slappart2'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart2'
,
'slaprunner'
,
'slappart2'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart3'
,
'slaprunner'
,
'slappart3'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart3'
,
'slaprunner'
,
'slappart3'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart4'
,
'slaprunner'
,
'slappart4'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart4'
,
'slaprunner'
,
'slappart4'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart5'
,
'slaprunner'
,
'slappart5'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart5'
,
'slaprunner'
,
'slappart5'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart6'
,
'slaprunner'
,
'slappart6'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart6'
,
'slaprunner'
,
'slappart6'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart7'
,
'slaprunner'
,
'slappart7'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart7'
,
'slaprunner'
,
'slappart7'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart8'
,
'slaprunner'
,
'slappart8'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart8'
,
'slaprunner'
,
'slappart8'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart9'
,
'slaprunner'
,
'slappart9'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart9'
,
'slaprunner'
,
'slappart9'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart10'
,
'slaprunner'
,
'slappart10'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart10'
,
'slaprunner'
,
'slappart10'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart11'
,
'slaprunner'
,
'slappart11'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart11'
,
'slaprunner'
,
'slappart11'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart12'
,
'slaprunner'
,
'slappart12'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart12'
,
'slaprunner'
,
'slappart12'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart13'
,
'slaprunner'
,
'slappart13'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart13'
,
'slaprunner'
,
'slappart13'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart14'
,
'slaprunner'
,
'slappart14'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart14'
,
'slaprunner'
,
'slappart14'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart15'
,
'slaprunner'
,
'slappart15'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart15'
,
'slaprunner'
,
'slappart15'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart16'
,
'slaprunner'
,
'slappart16'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart16'
,
'slaprunner'
,
'slappart16'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart17'
,
'slaprunner'
,
'slappart17'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart17'
,
'slaprunner'
,
'slappart17'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart18'
,
'slaprunner'
,
'slappart18'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart18'
,
'slaprunner'
,
'slappart18'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart19'
,
'slaprunner'
,
'slappart19'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
4
"
VALUES
(
'slappart19'
,
'slaprunner'
,
'slappart19'
,
'::1'
,
'ffff:ffff:ffff::'
);
CREATE
TABLE
forwarded_partition_request1
4
(
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart0'
,
'slaprunner'
,
'slappart0'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart0'
,
'slaprunner'
,
'slappart0'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart1'
,
'slaprunner'
,
'slappart1'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart1'
,
'slaprunner'
,
'slappart1'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart2'
,
'slaprunner'
,
'slappart2'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart2'
,
'slaprunner'
,
'slappart2'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart3'
,
'slaprunner'
,
'slappart3'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart3'
,
'slaprunner'
,
'slappart3'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart4'
,
'slaprunner'
,
'slappart4'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart4'
,
'slaprunner'
,
'slappart4'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart5'
,
'slaprunner'
,
'slappart5'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart5'
,
'slaprunner'
,
'slappart5'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart6'
,
'slaprunner'
,
'slappart6'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart6'
,
'slaprunner'
,
'slappart6'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart7'
,
'slaprunner'
,
'slappart7'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart7'
,
'slaprunner'
,
'slappart7'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart8'
,
'slaprunner'
,
'slappart8'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart8'
,
'slaprunner'
,
'slappart8'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart9'
,
'slaprunner'
,
'slappart9'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart9'
,
'slaprunner'
,
'slappart9'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart10'
,
'slaprunner'
,
'slappart10'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart10'
,
'slaprunner'
,
'slappart10'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart11'
,
'slaprunner'
,
'slappart11'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart11'
,
'slaprunner'
,
'slappart11'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart12'
,
'slaprunner'
,
'slappart12'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart12'
,
'slaprunner'
,
'slappart12'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart13'
,
'slaprunner'
,
'slappart13'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart13'
,
'slaprunner'
,
'slappart13'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart14'
,
'slaprunner'
,
'slappart14'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart14'
,
'slaprunner'
,
'slappart14'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart15'
,
'slaprunner'
,
'slappart15'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart15'
,
'slaprunner'
,
'slappart15'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart16'
,
'slaprunner'
,
'slappart16'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart16'
,
'slaprunner'
,
'slappart16'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart17'
,
'slaprunner'
,
'slappart17'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart17'
,
'slaprunner'
,
'slappart17'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart18'
,
'slaprunner'
,
'slappart18'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart18'
,
'slaprunner'
,
'slappart18'
,
'::1'
,
'ffff:ffff:ffff::'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart19'
,
'slaprunner'
,
'slappart19'
,
'10.0.30.235'
,
'255.255.255.255'
);
INSERT
INTO
"partition_network1
5
"
VALUES
(
'slappart19'
,
'slaprunner'
,
'slappart19'
,
'::1'
,
'ffff:ffff:ffff::'
);
CREATE
TABLE
forwarded_partition_request1
5
(
partition_reference
VARCHAR
(
255
),
-- a.k.a source_instance_id
master_url
VARCHAR
(
255
)
);
...
...
slapos/tests/test_slapproxy/generate_dump.sh
View file @
ab0d27e6
...
...
@@ -41,6 +41,13 @@ EOF
sqlite3
${
TMPD
}
/proxy.db <
$DUMP_BEFORE
slapos proxy start
--cfg
${
TMPD
}
/slapos.cfg &
# If you are running tests locally and you want to refer to the slapos being tested,
# you can use the test python executable in this way:
# cd ../../..
# python -m slapos.cli.entry proxy start --cfg ${TMPD}/slapos.cfg &
# cd -
SLAPOS_PROXY_PID
=
$!
curl
--silent
--retry-connrefused
--retry
3 http://127.0.0.1:
${
PORT
}
/getComputerInformation?computer_id
=
$COMPUTER_ID
...
...
slapos/tests/test_slapproxy/slapos_multimaster.cfg.in
View file @
ab0d27e6
[slapos]
software_root = %(
temp
dir)s/opt/slapgrid
instance_root = %(
temp
dir)s/srv/slapgrid
software_root = %(
root
dir)s/opt/slapgrid
instance_root = %(
root
dir)s/srv/slapgrid
master_url = %(proxyaddr)s
computer_id = computer
[slapproxy]
host = 127.0.0.1
port = 8080
database_uri = %(
temp
dir)s/lib/proxy.db
database_uri = %(
root
dir)s/lib/proxy.db
# Here goes the list of slapos masters that slapproxy can contact
# Each section beginning by multimaster is a different SlapOS Master, represented by arbitrary name.
...
...
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