Commit 07ea8eca authored by Łukasz Nowak's avatar Łukasz Nowak

Update Release Candidate

parents ec1d1159 71abde5e
...@@ -57,7 +57,7 @@ environment = ...@@ -57,7 +57,7 @@ environment =
LDFLAGS=-Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${isl:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${mpfr:location}/lib LDFLAGS=-Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${isl:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${mpfr:location}/lib
PATH=${binutils:location}/bin:${gettext:location}/bin:${perl:location}/bin:${tar:location}/bin:%(PATH)s PATH=${binutils:location}/bin:${gettext:location}/bin:${perl:location}/bin:${tar:location}/bin:%(PATH)s
[gcc-common:os.path.isdir('/usr/lib/arm-linux-gnueabihf') and os.access('/proc/device-tree/model', os.R_OK) and 'OLinuXino-LIME2' in open('/proc/device-tree/model').read()] [gcc-common:os.path.isdir('/usr/lib/arm-linux-gnueabihf') and os.access('/proc/device-tree/model', os.R_OK) and 'OLinuXino' in open('/proc/device-tree/model').read()]
extra-configure-options = extra-configure-options =
--with-arch=armv7-a --with-arch=armv7-a
--with-fpu=vfp --with-fpu=vfp
......
...@@ -74,13 +74,25 @@ environment-extra = ...@@ -74,13 +74,25 @@ environment-extra =
[golang1.17] [golang1.17]
<= golang-common <= golang-common
url = https://golang.org/dl/go1.17.6.src.tar.gz url = https://golang.org/dl/go1.17.13.src.tar.gz
md5sum = dc57f93f323e9f8189e5ffc1f223e346 md5sum = 4476707f05cf6915ec1173038dc357a9
# go1.17 needs go1.4 to bootstrap # go1.17 needs go1.4 to bootstrap
environment-extra = environment-extra =
GOROOT_BOOTSTRAP=${golang14:location} GOROOT_BOOTSTRAP=${golang14:location}
[golang1.18]
<= golang-common
url = https://golang.org/dl/go1.18.9.src.tar.gz
md5sum = e2caa7c4de49aa77a14c694bfc9a5cd1
# go1.18 needs go1.4 or go1.17 to bootstrap.
# We use go1.4 to reduce the amount of components which
# need to be installed. See following note for rationale:
# https://lab.nexedi.com/nexedi/slapos/merge_requests/1305#note_174936
environment-extra =
GOROOT_BOOTSTRAP=${golang14:location}
# ---- infrastructure to build Go workspaces / projects ---- # ---- infrastructure to build Go workspaces / projects ----
# gowork is the top-level section that defines Go workspace. # gowork is the top-level section that defines Go workspace.
...@@ -140,7 +152,7 @@ bin = ${gowork.dir:bin} ...@@ -140,7 +152,7 @@ bin = ${gowork.dir:bin}
depends = ${gowork.goinstall:recipe} depends = ${gowork.goinstall:recipe}
# go version used for the workspace (possible to override in applications) # go version used for the workspace (possible to override in applications)
golang = ${golang1.17:location} golang = ${golang1.18:location}
# no special build flags by default # no special build flags by default
buildflags = buildflags =
......
...@@ -65,7 +65,6 @@ Pygments = 2.2.0 ...@@ -65,7 +65,6 @@ Pygments = 2.2.0
astor = 0.5 astor = 0.5
backports-abc = 0.5 backports-abc = 0.5
backports.shutil-get-terminal-size = 1.0.0 backports.shutil-get-terminal-size = 1.0.0
cycler = 0.10.0
ipykernel = 4.5.2 ipykernel = 4.5.2
ipython = 5.3.0 ipython = 5.3.0
ipython-genutils = 0.1.0 ipython-genutils = 0.1.0
...@@ -78,7 +77,6 @@ matplotlib = 2.1.2 ...@@ -78,7 +77,6 @@ matplotlib = 2.1.2
mistune = 0.7.3 mistune = 0.7.3
nbformat = 4.3.0 nbformat = 4.3.0
notebook = 4.4.1 notebook = 4.4.1
pandas = 0.19.2
prompt-toolkit = 1.0.13 prompt-toolkit = 1.0.13
ptyprocess = 0.5.1 ptyprocess = 0.5.1
pyzmq = 16.0.2 pyzmq = 16.0.2
...@@ -89,8 +87,6 @@ statsmodels = 0.8.0 ...@@ -89,8 +87,6 @@ statsmodels = 0.8.0
terminado = 0.6 terminado = 0.6
tornado = 4.4.2 tornado = 4.4.2
widgetsnbextension = 2.0.0 widgetsnbextension = 2.0.0
# numpy >= 1.13.1 is required for numpy.core.multiarray
numpy = 1.13.1
# nbconvert 4.2.0 depends on entrypoints egg that is not available as tar/zip source. # nbconvert 4.2.0 depends on entrypoints egg that is not available as tar/zip source.
nbconvert = 4.1.0 nbconvert = 4.1.0
...@@ -99,7 +95,6 @@ patsy = 0.4.1 ...@@ -99,7 +95,6 @@ patsy = 0.4.1
pexpect = 4.2.1 pexpect = 4.2.1
pickleshare = 0.7.4 pickleshare = 0.7.4
scandir = 1.5 scandir = 1.5
scipy = 0.19.0
singledispatch = 3.4.0.3 singledispatch = 3.4.0.3
wcwidth = 0.1.7 wcwidth = 0.1.7
jupyter = 1.0.0 jupyter = 1.0.0
......
[buildout] [buildout]
extends = extends =
../cmake/buildout.cfg ../cmake/buildout.cfg
../openssl/buildout.cfg
../libxslt/buildout.cfg
[mosquitto] [mosquitto]
recipe = slapos.recipe.cmmi recipe = slapos.recipe.cmmi
...@@ -9,5 +11,11 @@ md5sum = 22b7a8b05caa692cb22496b791529193 ...@@ -9,5 +11,11 @@ md5sum = 22b7a8b05caa692cb22496b791529193
configure-command = configure-command =
${cmake:location}/bin/cmake ${cmake:location}/bin/cmake
configure-options = configure-options =
-DDOCUMENTATION=OFF
-DWITH_CJSON=no -DWITH_CJSON=no
-DCMAKE_INSTALL_PREFIX=@@LOCATION@@ -DCMAKE_INSTALL_PREFIX=@@LOCATION@@
-DOPENSSL_ROOT_DIR=${openssl:location}
-DOPENSSL_INCLUDE_DIR=${openssl:location}/include
environment =
PATH=${openssl:location}/bin:${libxslt:location}/bin:%(PATH)s
LDFLAGS=-L${openssl:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=@@LOCATION@@/lib
...@@ -27,4 +27,4 @@ numpy = 1.22.0 ...@@ -27,4 +27,4 @@ numpy = 1.22.0
depends = depends =
[versions:sys.version_info < (3,8)] [versions:sys.version_info < (3,8)]
numpy = 1.16.4 numpy = 1.16.5
...@@ -15,13 +15,14 @@ egg = pandas ...@@ -15,13 +15,14 @@ egg = pandas
environment = pandas-env environment = pandas-env
setup-eggs = setup-eggs =
${numpy:egg} ${numpy:egg}
[pandas:sys.version_info >= (3,8)]
setup-eggs +=
${cython:egg} ${cython:egg}
[versions] [versions]
pandas = 0.25.3
[versions:sys.version_info >= (3,8)]
pandas = 1.4.0 pandas = 1.4.0
[pandas:sys.version_info < (3,8)]
setup-eggs =
${numpy:egg}
[versions:sys.version_info < (3,8)]
pandas = 0.24.2
[buildout] [buildout]
extends = extends =
../java-jdk/buildout.cfg
../libsecret/buildout.cfg ../libsecret/buildout.cfg
../pkgconfig/buildout.cfg ../pkgconfig/buildout.cfg
../patchelf/buildout.cfg ../patchelf/buildout.cfg
...@@ -144,8 +143,7 @@ content = ...@@ -144,8 +143,7 @@ content =
"editor.tabSize": 2, "editor.tabSize": 2,
"plantuml.server": "https://plantuml.host.vifib.net/svg/", "plantuml.server": "https://plantuml.host.vifib.net/svg/",
"plantuml.render": "PlantUMLServer", "plantuml.render": "PlantUMLServer",
"gitlens.remotes": [{ "domain": "lab.nexedi.com", "type": "GitLab" }], "gitlens.remotes": [{ "domain": "lab.nexedi.com", "type": "GitLab" }]
"java.home": "${java-jdk:location}"
}, },
"warnOnPotentiallyInsecureHostPattern": false "warnOnPotentiallyInsecureHostPattern": false
} }
......
...@@ -19,7 +19,7 @@ md5sum = 8157c22134200bd862a07c6521ebf799 ...@@ -19,7 +19,7 @@ md5sum = 8157c22134200bd862a07c6521ebf799
[yarn.lock] [yarn.lock]
_update_hash_filename_ = yarn.lock _update_hash_filename_ = yarn.lock
md5sum = d3fae8f0a2c911611d96a5dd870674c6 md5sum = ff5b37cac09580b885e6d269f62cdbad
[ms-python-disable-jedi-buildout.patch] [ms-python-disable-jedi-buildout.patch]
_update_hash_filename_ = ms-python-disable-jedi-buildout.patch _update_hash_filename_ = ms-python-disable-jedi-buildout.patch
......
# This file is automatically generated from generate_download_plugins_cfg.py # This file is automatically generated from generate_download_plugins_cfg.py
# Do not edit directly. # Do not edit directly.
[theia-download-plugins] [theia-download-plugins]
urls = vscode-bat https://open-vsx.org/api/vscode/bat/1.64.0-next.68976705968/file/vscode.bat-1.64.0-next.68976705968.vsix 3808827894862d2c63aae04a4840a861 urls = vscode-bat https://open-vsx.org/api/vscode/bat/1.64.2/file/vscode.bat-1.64.2.vsix 1901ff00b24a0bf948bc2c9738cb4cd1
vscode-clojure https://open-vsx.org/api/vscode/clojure/1.64.0-next.d9fa2b12136/file/vscode.clojure-1.64.0-next.d9fa2b12136.vsix 4e05d77c5118cd92e28994717181bf9a vscode-clojure https://open-vsx.org/api/vscode/clojure/1.64.2/file/vscode.clojure-1.64.2.vsix a0729fdc8032a742b76be91e53052d23
vscode-coffeescript https://open-vsx.org/api/vscode/coffeescript/1.64.0-next.d9fa2b12136/file/vscode.coffeescript-1.64.0-next.d9fa2b12136.vsix d56e4973fdc4239f06e66c662f6dac48 vscode-coffeescript https://open-vsx.org/api/vscode/coffeescript/1.64.2/file/vscode.coffeescript-1.64.2.vsix a870b64940b69b39b5d7e2ba43bbe689
vscode-configuration-editing https://open-vsx.org/api/vscode/configuration-editing/1.64.0-next.68976705968/file/vscode.configuration-editing-1.64.0-next.68976705968.vsix 3d75fe0c13ab47f5d888fc46ab7bbeee vscode-configuration-editing https://open-vsx.org/api/vscode/configuration-editing/1.64.2/file/vscode.configuration-editing-1.64.2.vsix 01a93045a3c68bd9e36a5038bd9467de
vscode-cpp https://open-vsx.org/api/vscode/cpp/1.64.0-next.68976705968/file/vscode.cpp-1.64.0-next.68976705968.vsix c28a5153f9c901cae1a49ecb7286ad13 vscode-cpp https://open-vsx.org/api/vscode/cpp/1.64.2/file/vscode.cpp-1.64.2.vsix 6fbb59c00831b79b2038d6e6dbfc9595
vscode-csharp https://open-vsx.org/api/vscode/csharp/1.64.0-next.68976705968/file/vscode.csharp-1.64.0-next.68976705968.vsix 7df8a1d496fe64be501d700b317add86 vscode-csharp https://open-vsx.org/api/vscode/csharp/1.64.2/file/vscode.csharp-1.64.2.vsix 1c0938aba4ee5f512829ca0bf9976fcf
vscode-css https://open-vsx.org/api/vscode/css/1.64.0-next.68976705968/file/vscode.css-1.64.0-next.68976705968.vsix a6b66792515359636d2b08e290aa7a2b vscode-css https://open-vsx.org/api/vscode/css/1.64.2/file/vscode.css-1.64.2.vsix 5bf5e7249d6f5d7132581223e06ed980
vscode-css-language-features https://open-vsx.org/api/vscode/css-language-features/1.64.0-next.68976705968/file/vscode.css-language-features-1.64.0-next.68976705968.vsix b15baed86b3895e3fcf103c1f56f676a vscode-css-language-features https://open-vsx.org/api/vscode/css-language-features/1.64.2/file/vscode.css-language-features-1.64.2.vsix 0215b8a8219d0ce8e82459920f587ae0
vscode-debug-auto-launch https://open-vsx.org/api/vscode/debug-auto-launch/1.64.0-next.68976705968/file/vscode.debug-auto-launch-1.64.0-next.68976705968.vsix 0792fc7fc0ca8befd6fd872c7564df99 vscode-debug-auto-launch https://open-vsx.org/api/vscode/debug-auto-launch/1.64.2/file/vscode.debug-auto-launch-1.64.2.vsix 84b3911a417c502713c740604ce8c0b3
vscode-docker https://open-vsx.org/api/vscode/docker/1.64.0-next.d9fa2b12136/file/vscode.docker-1.64.0-next.d9fa2b12136.vsix 87c2019e0143bf6175bd6a0ea34972fc vscode-docker https://open-vsx.org/api/vscode/docker/1.64.2/file/vscode.docker-1.64.2.vsix 456f074f44df3304ac691d2b7eb8fb81
vscode-emmet https://open-vsx.org/api/vscode/emmet/1.64.0-next.d9fa2b12136/file/vscode.emmet-1.64.0-next.d9fa2b12136.vsix cc149d6a9b30936cfcd895ba9a984a7b vscode-emmet https://open-vsx.org/api/vscode/emmet/1.64.2/file/vscode.emmet-1.64.2.vsix 888a23488fc622bbc66f5809a41c26b4
vscode-fsharp https://open-vsx.org/api/vscode/fsharp/1.64.0-next.d9fa2b12136/file/vscode.fsharp-1.64.0-next.d9fa2b12136.vsix a8c41bb0612f5fe73b52e979a172fd90 vscode-fsharp https://open-vsx.org/api/vscode/fsharp/1.64.2/file/vscode.fsharp-1.64.2.vsix 296ca507167fe1a40f7b52a40242d8a1
vscode-git-base https://open-vsx.org/api/vscode/git-base/1.64.0-next.68976705968/file/vscode.git-base-1.64.0-next.68976705968.vsix fe6c947d635ac5f66e46ca1b610b8d40 vscode-git-base https://open-vsx.org/api/vscode/git-base/1.64.2/file/vscode.git-base-1.64.2.vsix 27274057ed5c5e8cdec74a9680f45c62
vscode-git https://open-vsx.org/api/vscode/git/1.64.0-next.d9fa2b12136/file/vscode.git-1.64.0-next.d9fa2b12136.vsix 816a84a16eee644c857b22064f14c25b vscode-git https://open-vsx.org/api/vscode/git/1.64.2/file/vscode.git-1.64.2.vsix 346e87aac8a2963d5bdad6678b4713e6
vscode-go https://open-vsx.org/api/vscode/go/1.64.0-next.68976705968/file/vscode.go-1.64.0-next.68976705968.vsix a4b2d5f49d6d291b47953737b187ba87 vscode-go https://open-vsx.org/api/vscode/go/1.64.2/file/vscode.go-1.64.2.vsix 8ab63e75f0c82c8a4207fb23ca33a873
vscode-groovy https://open-vsx.org/api/vscode/groovy/1.64.0-next.68976705968/file/vscode.groovy-1.64.0-next.68976705968.vsix 21493fad1579b469c20ad096016604e8 vscode-groovy https://open-vsx.org/api/vscode/groovy/1.64.2/file/vscode.groovy-1.64.2.vsix 306eebbdcb3cd4372f7897ccb96c939c
vscode-grunt https://open-vsx.org/api/vscode/grunt/1.64.0-next.68976705968/file/vscode.grunt-1.64.0-next.68976705968.vsix a960e0e4874395be14f57ef52221d770 vscode-grunt https://open-vsx.org/api/vscode/grunt/1.64.2/file/vscode.grunt-1.64.2.vsix 69944d92cf98b78bac144a4fe4490dd1
vscode-gulp https://open-vsx.org/api/vscode/gulp/1.64.0-next.68976705968/file/vscode.gulp-1.64.0-next.68976705968.vsix 88cf31c50fc25db47f3ebff082de70ea vscode-gulp https://open-vsx.org/api/vscode/gulp/1.64.2/file/vscode.gulp-1.64.2.vsix 25bfba939f365ab3a448d729836c3b25
vscode-handlebars https://open-vsx.org/api/vscode/handlebars/1.64.0-next.68976705968/file/vscode.handlebars-1.64.0-next.68976705968.vsix 15fb2fc72c65541763087881d888bb21 vscode-handlebars https://open-vsx.org/api/vscode/handlebars/1.64.2/file/vscode.handlebars-1.64.2.vsix 4dc1e05ea5c3b97b4ec329bed3516cab
vscode-hlsl https://open-vsx.org/api/vscode/hlsl/1.64.0-next.68976705968/file/vscode.hlsl-1.64.0-next.68976705968.vsix 4eb3eb5c511f60abd9166e00ef4b0c24 vscode-hlsl https://open-vsx.org/api/vscode/hlsl/1.64.2/file/vscode.hlsl-1.64.2.vsix 8392843dd637debabe55acff62d2c097
vscode-html https://open-vsx.org/api/vscode/html/1.64.0-next.d9fa2b12136/file/vscode.html-1.64.0-next.d9fa2b12136.vsix 87166fc7b70b607789edc5066e873925 vscode-html https://open-vsx.org/api/vscode/html/1.64.2/file/vscode.html-1.64.2.vsix 0e87df0acf77b4b006b4d7e4be855cb4
vscode-html-language-features https://open-vsx.org/api/vscode/html-language-features/1.64.0-next.68976705968/file/vscode.html-language-features-1.64.0-next.68976705968.vsix 9f4c1ee42da4b1d5e0045ded6d523bb9 vscode-html-language-features https://open-vsx.org/api/vscode/html-language-features/1.64.2/file/vscode.html-language-features-1.64.2.vsix 29d44bbc8f366f79eca105c638e40cf1
vscode-ini https://open-vsx.org/api/vscode/ini/1.64.0-next.d9fa2b12136/file/vscode.ini-1.64.0-next.d9fa2b12136.vsix c419b150fad0cc71a746587eb5770ef8 vscode-ini https://open-vsx.org/api/vscode/ini/1.64.2/file/vscode.ini-1.64.2.vsix ef27c31c9cc36426da738314ca9fd276
vscode-jake https://open-vsx.org/api/vscode/jake/1.64.0-next.68976705968/file/vscode.jake-1.64.0-next.68976705968.vsix cf4b4e910e58ecf3ccfa4ec2cee88059 vscode-jake https://open-vsx.org/api/vscode/jake/1.64.2/file/vscode.jake-1.64.2.vsix 8a65e3226181234511fd0c11d9604d2f
vscode-java https://open-vsx.org/api/vscode/java/1.64.0-next.68976705968/file/vscode.java-1.64.0-next.68976705968.vsix 9476e9de0cac5875768d352b9126febe vscode-java https://open-vsx.org/api/vscode/java/1.64.2/file/vscode.java-1.64.2.vsix 984f0712831a0e2e6e0366d19c02b347
vscode-javascript https://open-vsx.org/api/vscode/javascript/1.64.0-next.68976705968/file/vscode.javascript-1.64.0-next.68976705968.vsix 94ec64cf481c4ae0f2f39e3444e24d08 vscode-javascript https://open-vsx.org/api/vscode/javascript/1.64.2/file/vscode.javascript-1.64.2.vsix f9c3ae4466d86db00951367c0511ef3d
ms-vscode-js-debug https://open-vsx.org/api/ms-vscode/js-debug/1.51.0/file/ms-vscode.js-debug-1.51.0.vsix db7f18b5bd883018d2b9150e20098b5f ms-vscode-js-debug https://open-vsx.org/api/ms-vscode/js-debug/1.51.0/file/ms-vscode.js-debug-1.51.0.vsix db7f18b5bd883018d2b9150e20098b5f
vscode-json https://open-vsx.org/api/vscode/json/1.64.0-next.68976705968/file/vscode.json-1.64.0-next.68976705968.vsix e9aad32d331b9f51480c2211063183a3 vscode-json https://open-vsx.org/api/vscode/json/1.64.2/file/vscode.json-1.64.2.vsix ecd86b9f7b7811996e0fe2f5e5b7905e
vscode-json-language-features https://open-vsx.org/api/vscode/json-language-features/1.64.0-next.68976705968/file/vscode.json-language-features-1.64.0-next.68976705968.vsix aff87b26843553339e3599754dab307e vscode-json-language-features https://open-vsx.org/api/vscode/json-language-features/1.64.2/file/vscode.json-language-features-1.64.2.vsix b4db1245639536e6670711f4e47b0687
vscode-less https://open-vsx.org/api/vscode/less/1.64.0-next.68976705968/file/vscode.less-1.64.0-next.68976705968.vsix 05ddbc8712084832dc264b2b6bfe082e vscode-less https://open-vsx.org/api/vscode/less/1.64.2/file/vscode.less-1.64.2.vsix 56c1438d92ed10471a356c444db4af6c
vscode-log https://open-vsx.org/api/vscode/log/1.64.0-next.68976705968/file/vscode.log-1.64.0-next.68976705968.vsix b5dd144003e253bf496e77772478e6bc vscode-log https://open-vsx.org/api/vscode/log/1.64.2/file/vscode.log-1.64.2.vsix 870b732441b7479734a4d9b10cf15330
vscode-lua https://open-vsx.org/api/vscode/lua/1.64.0-next.68976705968/file/vscode.lua-1.64.0-next.68976705968.vsix c8f386eb35006a473a7cd84fa4eaa9bd vscode-lua https://open-vsx.org/api/vscode/lua/1.64.2/file/vscode.lua-1.64.2.vsix cc9ce27193f225c0d9a87cf259e7b8d0
vscode-make https://open-vsx.org/api/vscode/make/1.64.0-next.68976705968/file/vscode.make-1.64.0-next.68976705968.vsix 99fade531280141a35ffecb9c24fabc7 vscode-make https://open-vsx.org/api/vscode/make/1.64.2/file/vscode.make-1.64.2.vsix f38b397c89e96efff8492255f6e39447
vscode-markdown https://open-vsx.org/api/vscode/markdown/1.64.0-next.68976705968/file/vscode.markdown-1.64.0-next.68976705968.vsix 6522d41686c64047c104a231644bc8cb vscode-markdown https://open-vsx.org/api/vscode/markdown/1.64.2/file/vscode.markdown-1.64.2.vsix 92245fa408ae7f1bbb8a6ad22096b05f
vscode-markdown-language-features https://open-vsx.org/api/vscode/markdown-language-features/1.64.0-next.68976705968/file/vscode.markdown-language-features-1.64.0-next.68976705968.vsix 0846abe91f5935457643d858529d3d12 vscode-markdown-language-features https://open-vsx.org/api/vscode/markdown-language-features/1.64.2/file/vscode.markdown-language-features-1.64.2.vsix 965b7d0fed9ae49df6dd0c923da7ad7e
vscode-merge-conflict https://open-vsx.org/api/vscode/merge-conflict/1.64.0-next.68976705968/file/vscode.merge-conflict-1.64.0-next.68976705968.vsix 7f2fa9d69fcc187df56775187c9d851e vscode-merge-conflict https://open-vsx.org/api/vscode/merge-conflict/1.64.2/file/vscode.merge-conflict-1.64.2.vsix c9b7b48c48ed85ef009959472a5d7e53
vscode-npm https://open-vsx.org/api/vscode/npm/1.64.0-next.68976705968/file/vscode.npm-1.64.0-next.68976705968.vsix 236f7fb01ffd9d1ef610cf42c50735b4 vscode-npm https://open-vsx.org/api/vscode/npm/1.64.2/file/vscode.npm-1.64.2.vsix a4ae8099e720b0e49560977e217b82a2
ms-vscode-node-debug https://open-vsx.org/api/ms-vscode/node-debug/1.45.0/file/ms-vscode.node-debug-1.45.0.vsix 676769e9901f5f51ed6a21d7c6a831fb ms-vscode-node-debug https://open-vsx.org/api/ms-vscode/node-debug/1.45.0/file/ms-vscode.node-debug-1.45.0.vsix 676769e9901f5f51ed6a21d7c6a831fb
ms-vscode-node-debug2 https://open-vsx.org/api/ms-vscode/node-debug2/1.43.0/file/ms-vscode.node-debug2-1.43.0.vsix 4c78ac1f3c4d753d005d72a68c13f7c7 ms-vscode-node-debug2 https://open-vsx.org/api/ms-vscode/node-debug2/1.43.0/file/ms-vscode.node-debug2-1.43.0.vsix 4c78ac1f3c4d753d005d72a68c13f7c7
vscode-objective-c https://open-vsx.org/api/vscode/objective-c/1.64.0-next.68976705968/file/vscode.objective-c-1.64.0-next.68976705968.vsix fd4960bdc742f5680b469a4c78bf350c vscode-objective-c https://open-vsx.org/api/vscode/objective-c/1.64.2/file/vscode.objective-c-1.64.2.vsix b7d0c2d42fd280c961f726c58cf84a45
vscode-perl https://open-vsx.org/api/vscode/perl/1.64.0-next.68976705968/file/vscode.perl-1.64.0-next.68976705968.vsix 22a8d19b8ea30ebb8f962d92dcf11213 vscode-perl https://open-vsx.org/api/vscode/perl/1.64.2/file/vscode.perl-1.64.2.vsix 25f33d0f4eebb285572b05343c50ca79
vscode-powershell https://open-vsx.org/api/vscode/powershell/1.64.0-next.68976705968/file/vscode.powershell-1.64.0-next.68976705968.vsix b9efcd63c1d902f8ab304f30ea7b3a46 vscode-powershell https://open-vsx.org/api/vscode/powershell/1.64.2/file/vscode.powershell-1.64.2.vsix 16370f64db00dedac8a9daad571246d7
vscode-pug https://open-vsx.org/api/vscode/pug/1.64.0-next.68976705968/file/vscode.pug-1.64.0-next.68976705968.vsix 84b5f8e238fdaffc97de0cc00bc7b866 vscode-pug https://open-vsx.org/api/vscode/pug/1.64.2/file/vscode.pug-1.64.2.vsix 07a1abda48190ca1c080fba056342842
vscode-python https://open-vsx.org/api/vscode/python/1.64.0-next.68976705968/file/vscode.python-1.64.0-next.68976705968.vsix 9cedb22e14f7d0d9e125f056799b0255 vscode-python https://open-vsx.org/api/vscode/python/1.64.2/file/vscode.python-1.64.2.vsix 6bccedf3af4a925187c7b64f8bce635f
vscode-r https://open-vsx.org/api/vscode/r/1.64.0-next.68976705968/file/vscode.r-1.64.0-next.68976705968.vsix 06ddfabf2a5dca828efcc1050c3da5bf vscode-r https://open-vsx.org/api/vscode/r/1.64.2/file/vscode.r-1.64.2.vsix 6c705272e9e0d880f4c88a2866ce38f2
vscode-razor https://open-vsx.org/api/vscode/razor/1.64.0-next.68976705968/file/vscode.razor-1.64.0-next.68976705968.vsix f69c2e7d1193ad9b5294138b3385ef11 vscode-razor https://open-vsx.org/api/vscode/razor/1.64.2/file/vscode.razor-1.64.2.vsix 3e3e09f1a65d7c4f7e76c59718bf7cf1
vscode-ruby https://open-vsx.org/api/vscode/ruby/1.64.0-next.68976705968/file/vscode.ruby-1.64.0-next.68976705968.vsix 0411258f14c98e040509c8b82ac5eb60 vscode-ruby https://open-vsx.org/api/vscode/ruby/1.64.2/file/vscode.ruby-1.64.2.vsix 79db9154b36648e9d161e53ee56aa427
vscode-rust https://open-vsx.org/api/vscode/rust/1.64.0-next.68976705968/file/vscode.rust-1.64.0-next.68976705968.vsix f11c453e9002b74f05806588667d80c4 vscode-rust https://open-vsx.org/api/vscode/rust/1.64.2/file/vscode.rust-1.64.2.vsix 03879b10ab8b7105f77189a0b0945d45
vscode-scss https://open-vsx.org/api/vscode/scss/1.64.0-next.68976705968/file/vscode.scss-1.64.0-next.68976705968.vsix ae01407e9aaf5db3bedfa2b1295b34a4 vscode-scss https://open-vsx.org/api/vscode/scss/1.64.2/file/vscode.scss-1.64.2.vsix 3e2b75817772dd08f9bcbbe2c3229dd3
vscode-shaderlab https://open-vsx.org/api/vscode/shaderlab/1.64.0-next.68976705968/file/vscode.shaderlab-1.64.0-next.68976705968.vsix abc3f9b61ede4749125dc70d77aea4cc vscode-shaderlab https://open-vsx.org/api/vscode/shaderlab/1.64.2/file/vscode.shaderlab-1.64.2.vsix 04564bcf5ea4f6bc61d98a09a4098042
vscode-shellscript https://open-vsx.org/api/vscode/shellscript/1.64.0-next.68976705968/file/vscode.shellscript-1.64.0-next.68976705968.vsix ed143bbaf14d21c701671385b0e3f276 vscode-shellscript https://open-vsx.org/api/vscode/shellscript/1.64.2/file/vscode.shellscript-1.64.2.vsix 7f3a0f3ad26c12933e72af9583bc6256
vscode-sql https://open-vsx.org/api/vscode/sql/1.64.0-next.68976705968/file/vscode.sql-1.64.0-next.68976705968.vsix e6ec5be560d6416022ab64b9a81e5fa9 vscode-sql https://open-vsx.org/api/vscode/sql/1.64.2/file/vscode.sql-1.64.2.vsix 816b23bcfa1cba9c3663a41a5fb24563
vscode-swift https://open-vsx.org/api/vscode/swift/1.64.0-next.68976705968/file/vscode.swift-1.64.0-next.68976705968.vsix d3ab2b6bf0c0289dcc1eebfc5900c39a vscode-swift https://open-vsx.org/api/vscode/swift/1.64.2/file/vscode.swift-1.64.2.vsix 120b49a800ce4440a332e43e6505f884
vscode-theme-abyss https://open-vsx.org/api/vscode/theme-abyss/1.64.0-next.68976705968/file/vscode.theme-abyss-1.64.0-next.68976705968.vsix c2020243785034f221f37c382461ac4b vscode-theme-abyss https://open-vsx.org/api/vscode/theme-abyss/1.64.2/file/vscode.theme-abyss-1.64.2.vsix 3f2481da81c9e4fc1b3bfc12e5d81676
vscode-theme-defaults https://open-vsx.org/api/vscode/theme-defaults/1.64.0-next.68976705968/file/vscode.theme-defaults-1.64.0-next.68976705968.vsix 1eb37e411ee51e5a5e05465f8d4bd9e0 vscode-theme-defaults https://open-vsx.org/api/vscode/theme-defaults/1.64.2/file/vscode.theme-defaults-1.64.2.vsix 5d8659bc7fca0040ddeb31d0d33a10f3
vscode-theme-kimbie-dark https://open-vsx.org/api/vscode/theme-kimbie-dark/1.64.0-next.68976705968/file/vscode.theme-kimbie-dark-1.64.0-next.68976705968.vsix 2204dfa6fe0d14523d3882957256ec4c vscode-theme-kimbie-dark https://open-vsx.org/api/vscode/theme-kimbie-dark/1.64.2/file/vscode.theme-kimbie-dark-1.64.2.vsix 384f83b02df7ca9b546e2d863de8f373
vscode-theme-monokai https://open-vsx.org/api/vscode/theme-monokai/1.64.0-next.68976705968/file/vscode.theme-monokai-1.64.0-next.68976705968.vsix 6c8b1c9cf05868a8a43f8c28267e0873 vscode-theme-monokai https://open-vsx.org/api/vscode/theme-monokai/1.64.2/file/vscode.theme-monokai-1.64.2.vsix a510c9ab57bae3615b7ebacf27d3835f
vscode-theme-monokai-dimmed https://open-vsx.org/api/vscode/theme-monokai-dimmed/1.64.0-next.d9fa2b12136/file/vscode.theme-monokai-dimmed-1.64.0-next.d9fa2b12136.vsix 5872dd4bfd3547207783cc88fb8bc47d vscode-theme-monokai-dimmed https://open-vsx.org/api/vscode/theme-monokai-dimmed/1.64.2/file/vscode.theme-monokai-dimmed-1.64.2.vsix afe9389c2eafd2c50ac27a39ed9d61b7
vscode-theme-quietlight https://open-vsx.org/api/vscode/theme-quietlight/1.64.0-next.68976705968/file/vscode.theme-quietlight-1.64.0-next.68976705968.vsix 79059d3fb09b962df21cd0c745d3742e vscode-theme-quietlight https://open-vsx.org/api/vscode/theme-quietlight/1.64.2/file/vscode.theme-quietlight-1.64.2.vsix dd9ae36ddc89b9afc81ede7f14a4dcf3
vscode-theme-red https://open-vsx.org/api/vscode/theme-red/1.64.0-next.68976705968/file/vscode.theme-red-1.64.0-next.68976705968.vsix c5a6d2edda3ee45d21718c808835523e vscode-theme-red https://open-vsx.org/api/vscode/theme-red/1.64.2/file/vscode.theme-red-1.64.2.vsix d453d6cebdf0b7b9c187fe65a982c944
vscode-theme-solarized-dark https://open-vsx.org/api/vscode/theme-solarized-dark/1.64.0-next.68976705968/file/vscode.theme-solarized-dark-1.64.0-next.68976705968.vsix 1d4a3e28fb0dec4311573de97c8f4aaf vscode-theme-solarized-dark https://open-vsx.org/api/vscode/theme-solarized-dark/1.64.2/file/vscode.theme-solarized-dark-1.64.2.vsix f47d3b87f67f6ec6c4e0e933d4fb4420
vscode-theme-tomorrow-night-blue https://open-vsx.org/api/vscode/theme-tomorrow-night-blue/1.64.0-next.68976705968/file/vscode.theme-tomorrow-night-blue-1.64.0-next.68976705968.vsix 18ea8a3b21a04a1c7b9b5ac6b9e2481e vscode-theme-tomorrow-night-blue https://open-vsx.org/api/vscode/theme-tomorrow-night-blue/1.64.2/file/vscode.theme-tomorrow-night-blue-1.64.2.vsix 8ada1d4461a1128472fc9625c436d632
vscode-typescript https://open-vsx.org/api/vscode/typescript/1.64.0-next.68976705968/file/vscode.typescript-1.64.0-next.68976705968.vsix a2bd1461e1b6a33de0f5ef9ef7925eff vscode-typescript https://open-vsx.org/api/vscode/typescript/1.64.2/file/vscode.typescript-1.64.2.vsix a02500454e15d733c97965a14e19546f
vscode-typescript-language-features https://open-vsx.org/api/vscode/typescript-language-features/1.64.0-next.68976705968/file/vscode.typescript-language-features-1.64.0-next.68976705968.vsix cc6bccf754cad1ad2b68617b9ee75836 vscode-typescript-language-features https://open-vsx.org/api/vscode/typescript-language-features/1.64.2/file/vscode.typescript-language-features-1.64.2.vsix 04285e36dbe5292a1f945f9dd2481eae
vscode-vb https://open-vsx.org/api/vscode/vb/1.64.0-next.68976705968/file/vscode.vb-1.64.0-next.68976705968.vsix 68761dc3ab8b884e2d8a66587c06dc13 vscode-vb https://open-vsx.org/api/vscode/vb/1.64.2/file/vscode.vb-1.64.2.vsix 1838a38ac6c2a46577faf402eb48cfc4
vscode-vscode-theme-seti https://open-vsx.org/api/vscode/vscode-theme-seti/1.64.0-next.d9fa2b12136/file/vscode.vscode-theme-seti-1.64.0-next.d9fa2b12136.vsix 1c36cb3ad02a38468ab05cf47e5d8dfb vscode-vscode-theme-seti https://open-vsx.org/api/vscode/vscode-theme-seti/1.64.2/file/vscode.vscode-theme-seti-1.64.2.vsix 2e657cb98672577ef2b2652d5436a336
vscode-xml https://open-vsx.org/api/vscode/xml/1.64.0-next.68976705968/file/vscode.xml-1.64.0-next.68976705968.vsix 42a1f30aa07fec37217ae21f391d6c6d vscode-xml https://open-vsx.org/api/vscode/xml/1.64.2/file/vscode.xml-1.64.2.vsix a619bebcc9308c01be5e2b31b6a1fd9a
vscode-yaml https://open-vsx.org/api/vscode/yaml/1.64.0-next.68976705968/file/vscode.yaml-1.64.0-next.68976705968.vsix 1179f39c66406b35092762271691872c vscode-yaml https://open-vsx.org/api/vscode/yaml/1.64.2/file/vscode.yaml-1.64.2.vsix 4a4b855b1ede5beac2f450d95f9faad1
EditorConfig-EditorConfig https://open-vsx.org/api/EditorConfig/EditorConfig/0.16.6/file/EditorConfig.EditorConfig-0.16.6.vsix e787245e6c68617178ae995ad97c3ccb EditorConfig-EditorConfig https://open-vsx.org/api/EditorConfig/EditorConfig/0.16.6/file/EditorConfig.EditorConfig-0.16.6.vsix e787245e6c68617178ae995ad97c3ccb
dbaeumer-vscode-eslint https://open-vsx.org/api/dbaeumer/vscode-eslint/2.1.20/file/dbaeumer.vscode-eslint-2.1.20.vsix 1cb024ac02ebeb5ce6b0dfed6e51cdd2 dbaeumer-vscode-eslint https://open-vsx.org/api/dbaeumer/vscode-eslint/2.1.20/file/dbaeumer.vscode-eslint-2.1.20.vsix 1cb024ac02ebeb5ce6b0dfed6e51cdd2
ms-vscode-references-view https://open-vsx.org/api/ms-vscode/references-view/0.0.89/file/ms-vscode.references-view-0.0.89.vsix 7ec05cb01a77ee7f6c5198a5225fa707 ms-vscode-references-view https://open-vsx.org/api/ms-vscode/references-view/0.0.89/file/ms-vscode.references-view-0.0.89.vsix 7ec05cb01a77ee7f6c5198a5225fa707
vscjava-vscode-java-debug https://open-vsx.org/api/vscjava/vscode-java-debug/0.29.0/file/vscjava.vscode-java-debug-0.29.0.vsix 1eb95110f84ff8dcabbe3c672066b86d
redhat-java https://open-vsx.org/api/redhat/java/0.61.0/file/redhat.java-0.61.0.vsix 72e548e2845e1ff655f28111558d6942
vscjava-vscode-java-test https://open-vsx.org/api/vscjava/vscode-java-test/0.26.0/file/vscjava.vscode-java-test-0.26.0.vsix fd63da5537a4bee1d3ceaae0fa6bf419
ms-python-python https://open-vsx.org/api/ms-python/python/2020.10.332292344/file/ms-python.python-2020.10.332292344.vsix e5cb6d850db94278b9fda02e38851361 ms-python-python https://open-vsx.org/api/ms-python/python/2020.10.332292344/file/ms-python.python-2020.10.332292344.vsix e5cb6d850db94278b9fda02e38851361
perrinjerome-vscode-zc-buildout https://open-vsx.org/api/perrinjerome/vscode-zc-buildout/0.8.3/file/perrinjerome.vscode-zc-buildout-0.8.3.vsix 8fd4d7fb5c2e6203c7046f53dd839b77 perrinjerome-vscode-zc-buildout https://open-vsx.org/api/perrinjerome/vscode-zc-buildout/0.8.3/file/perrinjerome.vscode-zc-buildout-0.8.3.vsix 8fd4d7fb5c2e6203c7046f53dd839b77
jebbs-plantuml https://open-vsx.org/api/jebbs/plantuml/2.14.0/file/jebbs.plantuml-2.14.0.vsix 13fa7cbd14a30ecca166c41a307c7a73 jebbs-plantuml https://open-vsx.org/api/jebbs/plantuml/2.14.0/file/jebbs.plantuml-2.14.0.vsix 13fa7cbd14a30ecca166c41a307c7a73
......
import configparser import configparser
import logging
import requests import requests
import hashlib import hashlib
urls = [] urls = []
session = requests.Session()
timeout = 30
logger = logging.getLogger()
logging.basicConfig(level=logging.DEBUG)
for plugin_and_version in '''\ for plugin_and_version in '''\
vscode/bat/latest vscode/bat/latest
...@@ -83,9 +88,6 @@ for plugin_and_version in '''\ ...@@ -83,9 +88,6 @@ for plugin_and_version in '''\
ms-vscode/references-view/latest ms-vscode/references-view/latest
# golang.Go removed because it overwrites the PATH in theia shell # golang.Go removed because it overwrites the PATH in theia shell
# golang/Go/0.16.2 # golang/Go/0.16.2
vscjava/vscode-java-debug/0.29.0
redhat/java/0.61.0
vscjava/vscode-java-test/0.26.0
ms-python/python/2020.10.332292344 ms-python/python/2020.10.332292344
perrinjerome/vscode-zc-buildout/latest perrinjerome/vscode-zc-buildout/latest
jebbs/plantuml/2.14.0 jebbs/plantuml/2.14.0
...@@ -99,8 +101,9 @@ for plugin_and_version in '''\ ...@@ -99,8 +101,9 @@ for plugin_and_version in '''\
publisher, extension_name, version = plugin_and_version.split('/') publisher, extension_name, version = plugin_and_version.split('/')
api_url = f'https://open-vsx.org/api/{publisher}/{extension_name}/{version}' api_url = f'https://open-vsx.org/api/{publisher}/{extension_name}/{version}'
download_url = requests.get(api_url).json()['files']['download'] logger.info(plugin_and_version)
md5sum = hashlib.md5(requests.get(download_url).content).hexdigest() download_url = session.get(api_url, timeout=timeout).json()['files']['download']
md5sum = hashlib.md5(session.get(download_url, timeout=timeout).content).hexdigest()
urls.append(f'{publisher}-{extension_name} {download_url} {md5sum}') urls.append(f'{publisher}-{extension_name} {download_url} {md5sum}')
cfg = configparser.ConfigParser() cfg = configparser.ConfigParser()
......
This source diff could not be displayed because it is too large. You can view the blob instead.
[buildout]
parts =
kerberos
extends =
../../component/bison/buildout.cfg
[kerberos-package]
recipe = hexagonit.recipe.download
ignore-existing = true
url = http://web.mit.edu/kerberos/dist/krb5/1.11/krb5-1.11.1-signed.tar
md5sum = 76c6bed945c5771674357cfd4a08e3f5
[kerberos]
recipe = hexagonit.recipe.cmmi
url = ${kerberos-package:location}/krb5-1.11.1.tar.gz
configure-command = src/configure
configure-options =
--prefix=${buildout:parts-directory}/${:_buildout_section_name_}
make-options = -j1
environment =
PATH=${bison:location}/bin:%(PATH)s
...@@ -50,7 +50,7 @@ CGO_LDFLAGS += -Wl,-rpath=${zlib:location}/lib ...@@ -50,7 +50,7 @@ CGO_LDFLAGS += -Wl,-rpath=${zlib:location}/lib
recipe = slapos.recipe.build:gitclone recipe = slapos.recipe.build:gitclone
repository = https://lab.nexedi.com/nexedi/wendelin.core.git repository = https://lab.nexedi.com/nexedi/wendelin.core.git
branch = master branch = master
revision = wendelin.core-2.0.alpha2-2-g3d0f134c revision = wendelin.core-2.0.alpha3-0-g6315384
# dir is pretty name as top-level recipe # dir is pretty name as top-level recipe
location = ${buildout:parts-directory}/wendelin.core location = ${buildout:parts-directory}/wendelin.core
git-executable = ${git:location}/bin/git git-executable = ${git:location}/bin/git
...@@ -176,7 +176,6 @@ output = ${buildout:directory}/nginx_conf.in ...@@ -176,7 +176,6 @@ output = ${buildout:directory}/nginx_conf.in
Pillow = 6.2.2 Pillow = 6.2.2
matplotlib = 2.2.5 matplotlib = 2.2.5
kiwisolver = 1.1.0 kiwisolver = 1.1.0
cycler = 0.10.0
Pyro = 3.16 Pyro = 3.16
zeroconf2 = 0.19.2 zeroconf2 = 0.19.2
cython = 0.29.24 cython = 0.29.24
......
...@@ -122,11 +122,10 @@ autobahn = 19.11.2 ...@@ -122,11 +122,10 @@ autobahn = 19.11.2
txaio = 18.8.1 txaio = 18.8.1
idna = 2.10 idna = 2.10
numpy = 1.16.5
cycler = 0.10.0
click = 7.1.2 click = 7.1.2
lxml = 4.5.0 lxml = 4.5.0
opcua = 0.98.13 opcua = 0.98.13
trollius = 2.2.1 trollius = 2.2.1
futures = 3.3.0 futures = 3.3.0
numpy = 1.16.6
cycler = 0.10.0
...@@ -22,19 +22,19 @@ md5sum = 5784bea3bd608913769ff9a8afcccb68 ...@@ -22,19 +22,19 @@ md5sum = 5784bea3bd608913769ff9a8afcccb68
[profile-frontend] [profile-frontend]
filename = instance-frontend.cfg.in filename = instance-frontend.cfg.in
md5sum = 1ec349747487b45dd6b30bb2aa45acbe md5sum = 7c966ea975cea4dcea09281466df8082
[profile-master] [profile-master]
filename = instance-master.cfg.in filename = instance-master.cfg.in
md5sum = 50dbd9bd25fbc608b576ac83f4e13b0f md5sum = cfd5212f27696311f12c92dfce32cc59
[profile-slave-list] [profile-slave-list]
filename = instance-slave-list.cfg.in filename = instance-slave-list.cfg.in
md5sum = 5be5a32d5cf22e10967e59570dda2d36 md5sum = aba91817a1b58377597500f676603d23
[profile-master-publish-slave-information] [profile-master-publish-slave-information]
filename = instance-master-publish-slave-information.cfg.in filename = instance-master-publish-slave-information.cfg.in
md5sum = b3422f3624054f57b78d0e50a0de399a md5sum = cba4d995962f7fbeae3f61c9372c4181
[template-caddy-frontend-configuration] [template-caddy-frontend-configuration]
_update_hash_filename_ = templates/Caddyfile.in _update_hash_filename_ = templates/Caddyfile.in
......
...@@ -180,7 +180,6 @@ caddy-https-port = ${configuration:port} ...@@ -180,7 +180,6 @@ caddy-https-port = ${configuration:port}
slave-introspection-configuration = ${directory:etc}/slave-introspection-httpd-nginx.conf slave-introspection-configuration = ${directory:etc}/slave-introspection-httpd-nginx.conf
slave-introspection-https-port = ${configuration:slave-introspection-https-port} slave-introspection-https-port = ${configuration:slave-introspection-https-port}
slave-introspection-secure_access = ${slave-introspection-frontend:connection-secure_access} slave-introspection-secure_access = ${slave-introspection-frontend:connection-secure_access}
slave-introspection-domain = ${slave-introspection-frontend:connection-domain}
[self-signed-ip-access] [self-signed-ip-access]
# Self Signed certificate for HTTPS IP accesses to the frontend # Self Signed certificate for HTTPS IP accesses to the frontend
...@@ -979,7 +978,7 @@ software-url = http://git.erp5.org/gitweb/slapos.git/blob_plain/HEAD:/software/a ...@@ -979,7 +978,7 @@ software-url = http://git.erp5.org/gitweb/slapos.git/blob_plain/HEAD:/software/a
shared = true shared = true
config-url = https://[${slap-configuration:ipv6-random}]:{{ instance_parameter_dict['configuration.slave-introspection-https-port'] }}/ config-url = https://[${slap-configuration:ipv6-random}]:{{ instance_parameter_dict['configuration.slave-introspection-https-port'] }}/
config-https-only = true config-https-only = true
return = domain secure_access return = secure_access
[backend-haproxy-statistic-frontend] [backend-haproxy-statistic-frontend]
<= slap-connection <= slap-connection
......
...@@ -52,6 +52,11 @@ ...@@ -52,6 +52,11 @@
{% endif %} {% endif %}
{% endfor %} {% endfor %}
[common-frontend-information]
{% for frontend_key, frontend_value in frontend_information.items() %}
{{ frontend_key }} = {{ frontend_value }}
{% endfor %}
# Publish information for each slave # Publish information for each slave
{% set active_slave_instance_list = json_module.loads(active_slave_instance_dict['active-slave-instance-list']) %} {% set active_slave_instance_list = json_module.loads(active_slave_instance_dict['active-slave-instance-list']) %}
{% for slave_reference, slave_information in slave_information_dict.items() %} {% for slave_reference, slave_information in slave_information_dict.items() %}
...@@ -61,7 +66,9 @@ ...@@ -61,7 +66,9 @@
{% set publish_section_title = 'publish-%s' % slave_reference %} {% set publish_section_title = 'publish-%s' % slave_reference %}
{% do part_list.append(publish_section_title) %} {% do part_list.append(publish_section_title) %}
[{{ publish_section_title }}] [{{ publish_section_title }}]
recipe = slapos.cookbook:publish <= common-frontend-information
recipe = slapos.cookbook:publish_failsafe
-error-status-file = {{ publish_failsafe_error }}/{{ slave_reference }}-error.status
-slave-reference = {{ slave_reference }} -slave-reference = {{ slave_reference }}
{% set log_access_url = slave_information.pop('log-access-urls', None) %} {% set log_access_url = slave_information.pop('log-access-urls', None) %}
{% if log_access_url %} {% if log_access_url %}
...@@ -72,9 +79,6 @@ log-access-url = {{ dumps(json_module.dumps(log_access_url, sort_keys=True)) }} ...@@ -72,9 +79,6 @@ log-access-url = {{ dumps(json_module.dumps(log_access_url, sort_keys=True)) }}
{{ key }} = {{ dumps(value) }} {{ key }} = {{ dumps(value) }}
{% endfor %} {% endfor %}
{% endif %} {% endif %}
{% for frontend_key, frontend_value in frontend_information.items() %}
{{ frontend_key }} = {{ frontend_value }}
{% endfor %}
{% endfor %} {% endfor %}
[buildout] [buildout]
......
...@@ -414,6 +414,7 @@ backend-client-caucase-url = {{ caucase_url }} ...@@ -414,6 +414,7 @@ backend-client-caucase-url = {{ caucase_url }}
{# sort_keys are important in order to avoid shuffling parameters on each run #} {# sort_keys are important in order to avoid shuffling parameters on each run #}
rejected-slave-dict = {{ dumps(json_module.dumps(rejected_slave_dict, sort_keys=True)) }} rejected-slave-dict = {{ dumps(json_module.dumps(rejected_slave_dict, sort_keys=True)) }}
rejected-slave-promise-url = ${rejected-slave-promise:config-url} rejected-slave-promise-url = ${rejected-slave-promise:config-url}
publish-failsafe-error-promise-url = ${publish-failsafe-error-promise:config-url}
master-key-upload-url = ${request-kedifa:connection-master-key-upload-url} master-key-upload-url = ${request-kedifa:connection-master-key-upload-url}
master-key-generate-auth-url = ${request-kedifa:connection-master-key-generate-auth-url} master-key-generate-auth-url = ${request-kedifa:connection-master-key-generate-auth-url}
kedifa-caucase-url = ${request-kedifa:connection-caucase-url} kedifa-caucase-url = ${request-kedifa:connection-caucase-url}
...@@ -546,6 +547,7 @@ extra-context = ...@@ -546,6 +547,7 @@ extra-context =
section active_slave_instance_dict active-slave-instance section active_slave_instance_dict active-slave-instance
section warning_slave_information warning-slave-information section warning_slave_information warning-slave-information
key slave_kedifa_information request-kedifa:connection-slave-kedifa-information key slave_kedifa_information request-kedifa:connection-slave-kedifa-information
key publish_failsafe_error directory:publish-failsafe-error-var
[monitor-base-url-dict] [monitor-base-url-dict]
kedifa = ${request-kedifa:connection-monitor-base-url} kedifa = ${request-kedifa:connection-monitor-base-url}
...@@ -563,7 +565,10 @@ backup = ${:srv}/backup ...@@ -563,7 +565,10 @@ backup = ${:srv}/backup
caucased = ${:srv}/caucased caucased = ${:srv}/caucased
backup-caucased = ${:backup}/caucased backup-caucased = ${:backup}/caucased
# NGINX # NGINX
rejected-var = ${:var}/rejected-nginx master-introspection-var = ${:var}/master-introspection-nginx
# slaves
publish-failsafe-error-var = ${:var}/publish-failsafe-error
publish-failsafe-check-var = ${:var}/publish-failsafe-check
{% if aikc_enabled %} {% if aikc_enabled %}
[directory] [directory]
...@@ -829,27 +834,53 @@ context = ...@@ -829,27 +834,53 @@ context =
service = ${:etc}/service service = ${:etc}/service
promise-output = ${:srv}/promise-output promise-output = ${:srv}/promise-output
[rejected-slave-publish-configuration] [master-introspection-server-configuration]
ip = {{ instance_parameter_dict['ipv6-random'] }} ip = {{ instance_parameter_dict['ipv6-random'] }}
port = 14455 port = 14455
[rejected-slave-publish] [master-introspection-server]
directory = ${rejected-slave-json:directory} ip = ${master-introspection-server-configuration:ip}
url = https://${rejected-slave-password:user}:${rejected-slave-password:passwd}@[${rejected-slave-publish-configuration:ip}]:${rejected-slave-publish-configuration:port}/${rejected-slave-json:filename} port = ${master-introspection-server-configuration:port}
recipe = slapos.cookbook:wrapper recipe = slapos.cookbook:wrapper
command-line = {{ software_parameter_dict['nginx'] }} command-line = {{ software_parameter_dict['nginx'] }}
-c ${rejected-slave-template:output} -c ${master-introspection-template:output}
wrapper-path = ${directory:service}/rejected-slave-publish wrapper-path = ${directory:service}/master-introspection-server
hash-existing-files = hash-existing-files =
${buildout:directory}/software_release/buildout.cfg ${buildout:directory}/software_release/buildout.cfg
hash-files = hash-files =
${rejected-slave-template:output} ${master-introspection-template:output}
${rejected-slave-certificate:certificate} ${master-introspection-certificate:certificate}
[master-introspection-frontend]
<= slap-connection
recipe = slapos.cookbook:requestoptional
name = Master Introspection Frontend
software-url = http://git.erp5.org/gitweb/slapos.git/blob_plain/HEAD:/software/apache-frontend/software.cfg
shared = true
config-url = https://[${master-introspection-server:ip}]:${master-introspection-server:port}/
config-https-only = true
return = secure_access
[master-introspection-frontend-url]
recipe = slapos.recipe.build
url = ${master-introspection-frontend:connection-secure_access}
user = ${master-introspection-password:user}
password = ${master-introspection-password:passwd}
init =
import furl
url = furl.furl(options['url'])
url.set(username = options['user'].lower())
url.set(password = options['password'])
url.set(path = '')
options['frontend-url'] = url.tostr()
[rejected-slave-certificate] [rejected-slave-publish]
url = ${master-introspection-frontend-url:frontend-url}/${master-introspection-template:rejected-slave-path}/${rejected-slave-json:filename}
[master-introspection-certificate]
recipe = plone.recipe.command recipe = plone.recipe.command
certificate = ${directory:etc}/rejected-slave.pem certificate = ${directory:etc}/master-introspection.pem
key = ${:certificate} key = ${:certificate}
{#- Can be stopped on error, as does not rely on self provided service #} {#- Can be stopped on error, as does not rely on self provided service #}
...@@ -859,29 +890,31 @@ command = ...@@ -859,29 +890,31 @@ command =
[ -f ${:certificate} ] && {{ software_parameter_dict['findutils'] }}/bin/find ${:certificate} -type f -mtime +3 -delete [ -f ${:certificate} ] && {{ software_parameter_dict['findutils'] }}/bin/find ${:certificate} -type f -mtime +3 -delete
if ! [ -f ${:certificate} ] ; then if ! [ -f ${:certificate} ] ; then
openssl req -new -newkey rsa:2048 -sha256 -subj \ openssl req -new -newkey rsa:2048 -sha256 -subj \
"/CN=${rejected-slave-publish-configuration:ip}" \ "/CN=${master-introspection-server-configuration:ip}" \
-days 5 -nodes -x509 -keyout ${:certificate} -out ${:certificate} -days 5 -nodes -x509 -keyout ${:certificate} -out ${:certificate}
fi fi
[rejected-slave-password] [master-introspection-password]
recipe = slapos.cookbook:generate.password recipe = slapos.cookbook:generate.password
storage-path = ${directory:etc}/.rejected-slave.passwd storage-path = ${directory:etc}/.master-introspection.passwd
bytes = 8 bytes = 8
user = admin user = admin
[rejected-slave-htpasswd] [master-introspection-htpasswd]
recipe = plone.recipe.command recipe = plone.recipe.command
{#- Can be stopped on error, as does not rely on self provided service #} {#- Can be stopped on error, as does not rely on self provided service #}
stop-on-error = True stop-on-error = True
file = ${directory:var}/nginx-rejected.htpasswd file = ${directory:var}/master-introspection.htpasswd
{#- update-command is not needed, as if the ${:password} would change, the whole part will be recalculated #} {#- update-command is not needed, as if the ${:password} would change, the whole part will be recalculated #}
password = ${rejected-slave-password:passwd} password = ${master-introspection-password:passwd}
command = {{ software_parameter_dict['htpasswd'] }} -cb ${:file} ${rejected-slave-password:user} ${:password} command = {{ software_parameter_dict['htpasswd'] }} -cb ${:file} ${master-introspection-password:user} ${:password}
[rejected-slave-template] [master-introspection-template]
recipe = slapos.recipe.template:jinja2 recipe = slapos.recipe.template:jinja2
var = ${directory:rejected-var} var = ${directory:master-introspection-var}
pid = ${directory:var}/nginx-rejected.pid pid = ${directory:var}/nginx-master-introspection-server.pid
rejected-slave-path = rejected-slave
publish-failsafe-error-path = publish-failsafe-error
inline = inline =
daemon off; daemon off;
pid ${:pid}; pid ${:pid};
...@@ -895,35 +928,40 @@ inline = ...@@ -895,35 +928,40 @@ inline =
port_in_redirect off; port_in_redirect off;
error_log stderr; error_log stderr;
access_log /dev/null; access_log /dev/null;
listen [${rejected-slave-publish-configuration:ip}]:${rejected-slave-publish-configuration:port} ssl; listen [${master-introspection-server-configuration:ip}]:${master-introspection-server-configuration:port} ssl;
ssl_certificate ${rejected-slave-certificate:certificate}; ssl_certificate ${master-introspection-certificate:certificate};
ssl_certificate_key ${rejected-slave-certificate:certificate}; ssl_certificate_key ${master-introspection-certificate:certificate};
default_type application/octet-stream; default_type application/octet-stream;
client_body_temp_path ${:var} 1 2; client_body_temp_path ${:var} 1 2;
proxy_temp_path ${:var} 1 2; proxy_temp_path ${:var} 1 2;
fastcgi_temp_path ${:var} 1 2; fastcgi_temp_path ${:var} 1 2;
uwsgi_temp_path ${:var} 1 2; uwsgi_temp_path ${:var} 1 2;
scgi_temp_path ${:var} 1 2; scgi_temp_path ${:var} 1 2;
auth_basic "Master Introspection";
location / { auth_basic_user_file ${master-introspection-htpasswd:file};
location /${:rejected-slave-path} {
alias ${rejected-slave-json:directory}/; alias ${rejected-slave-json:directory}/;
autoindex off; autoindex off;
sendfile on; sendfile on;
sendfile_max_chunk 1m; sendfile_max_chunk 1m;
auth_basic "Rejected slave template"; }
auth_basic_user_file ${rejected-slave-htpasswd:file}; location /${:publish-failsafe-error-path} {
alias ${check-publish-failsafe-error:directory}/;
autoindex off;
sendfile on;
sendfile_max_chunk 1m;
} }
} }
} }
output = ${directory:etc}/nginx-rejected-slave.conf output = ${directory:etc}/nginx-master-introspection.conf
[promise-rejected-slave-publish-ip-port] [master-introspection-server-ip-port]
<= monitor-promise-base <= monitor-promise-base
promise = check_socket_listening promise = check_socket_listening
name = rejected-slave-publish-ip-port-listening.py name = master-introspection-server-ip-port-listening.py
config-host = ${rejected-slave-publish-configuration:ip} config-host = ${master-introspection-server-configuration:ip}
config-port = ${rejected-slave-publish-configuration:port} config-port = ${master-introspection-server-configuration:port}
[rejected-slave-promise] [rejected-slave-promise]
<= monitor-promise-base <= monitor-promise-base
...@@ -986,6 +1024,25 @@ hash-existing-files = ${buildout:directory}/software_release/buildout.cfg ...@@ -986,6 +1024,25 @@ hash-existing-files = ${buildout:directory}/software_release/buildout.cfg
key_len=2048 key_len=2048
)}} )}}
[check-publish-failsafe-error]
recipe = plone.recipe.command
directory = ${directory:publish-failsafe-check-var}
filename = publish-failsafe-error.txt
file = ${:directory}/${:filename}
command = {{ software_parameter_dict['findutils'] }}/bin/find ${directory:publish-failsafe-error-var} -type f -printf "%f\n" > ${:file}
update-command = ${:command}
[check-publish-failsafe-error-publish]
url = ${master-introspection-frontend-url:frontend-url}/${master-introspection-template:publish-failsafe-error-path}/${check-publish-failsafe-error:filename}
[publish-failsafe-error-promise]
<= monitor-promise-base
promise = check_file_state
name = publish-failsafe-error.py
config-filename = ${check-publish-failsafe-error:file}
config-state = empty
config-url = ${check-publish-failsafe-error-publish:url}
[buildout] [buildout]
extends = extends =
{{ software_parameter_dict['profile_common'] }} {{ software_parameter_dict['profile_common'] }}
...@@ -993,15 +1050,18 @@ extends = ...@@ -993,15 +1050,18 @@ extends =
parts = parts =
monitor-base monitor-base
publish-slave-information publish-slave-information
check-publish-failsafe-error
publish-failsafe-error-promise
publish-information publish-information
request-kedifa request-kedifa
rejected-slave-promise rejected-slave-promise
promise-rejected-slave-publish-ip-port master-introspection-server-ip-port
caucased-backend-client caucased-backend-client
caucased-backend-client-promise caucased-backend-client-promise
master-key-upload-url-ready-promise master-key-upload-url-ready-promise
master-key-generate-auth-url-ready-promise master-key-generate-auth-url-ready-promise
master-key-download-url-ready-promise master-key-download-url-ready-promise
master-introspection-frontend
{% for part in part_list %} {% for part in part_list %}
{{ ' %s' % part }} {{ ' %s' % part }}
{% endfor %} {% endfor %}
...@@ -376,18 +376,8 @@ config-frequency = 720 ...@@ -376,18 +376,8 @@ config-frequency = 720
{%- endif %} {%- endif %}
{#- ############################### #} {#- ############################### #}
{#- Publish Slave Information #} {#- Prepare Slave Information #}
{%- if not configuration['extra_slave_instance_list'] %}
{%- set publish_section_title = 'publish-%s-connection-information' % slave_instance.get('slave_reference') %}
{%- do part_list.append(publish_section_title) %}
[{{ publish_section_title }}]
recipe = slapos.cookbook:publish
{%- for key, value in slave_publish_dict.items() %}
{{ key }} = {{ value }}
{%- endfor %}
{%- else %}
{%- do slave_instance_information_list.append(slave_publish_dict) %} {%- do slave_instance_information_list.append(slave_publish_dict) %}
{%- endif %}
{%- do frontend_slave_list.append(slave_instance) %} {%- do frontend_slave_list.append(slave_instance) %}
{%- if slave_type != 'redirect' %} {%- if slave_type != 'redirect' %}
{%- do backend_slave_list.append(slave_instance) %} {%- do backend_slave_list.append(slave_instance) %}
......
...@@ -442,12 +442,12 @@ class TestDataMixin(object): ...@@ -442,12 +442,12 @@ class TestDataMixin(object):
generateHashFromFiles([ generateHashFromFiles([
backend_haproxy_wrapper_path] + hash_file_list) backend_haproxy_wrapper_path] + hash_file_list)
for rejected_slave_publish_path in glob.glob(os.path.join( for rejected_slave_publish_path in glob.glob(os.path.join(
self.instance_path, '*', 'etc', 'nginx-rejected-slave.conf')): self.instance_path, '*', 'etc', 'nginx-master-introspection.conf')):
partition_id = rejected_slave_publish_path.split('/')[-3] partition_id = rejected_slave_publish_path.split('/')[-3]
rejected_slave_pem_path = os.path.join( rejected_slave_pem_path = os.path.join(
self.instance_path, partition_id, 'etc', 'rejected-slave.pem') self.instance_path, partition_id, 'etc', 'master-introspection.pem')
data_replacement_dict[ data_replacement_dict[
'{hash-rejected-slave-publish}' '{hash-master-introspection}'
] = generateHashFromFiles( ] = generateHashFromFiles(
[rejected_slave_publish_path, rejected_slave_pem_path] + hash_file_list [rejected_slave_publish_path, rejected_slave_pem_path] + hash_file_list
) )
...@@ -955,6 +955,18 @@ class HttpFrontendTestCase(SlapOSInstanceTestCase): ...@@ -955,6 +955,18 @@ class HttpFrontendTestCase(SlapOSInstanceTestCase):
with cls.slap.instance_supervisor_rpc as instance_supervisor: with cls.slap.instance_supervisor_rpc as instance_supervisor:
return getattr(instance_supervisor, method)(*args, **kwargs) return getattr(instance_supervisor, method)(*args, **kwargs)
def assertPublishFailsafeErrorPromiseEmptyWithPop(self, parameter_dict):
promise_url = parameter_dict.pop(
'publish-failsafe-error-promise-url')
try:
result = requests.get(promise_url, verify=False)
self.assertEqual("", result.text)
except AssertionError:
raise
except Exception as e:
self.fail(e)
def assertRejectedSlavePromiseEmptyWithPop(self, parameter_dict): def assertRejectedSlavePromiseEmptyWithPop(self, parameter_dict):
rejected_slave_promise_url = parameter_dict.pop( rejected_slave_promise_url = parameter_dict.pop(
'rejected-slave-promise-url') 'rejected-slave-promise-url')
...@@ -1185,11 +1197,10 @@ class HttpFrontendTestCase(SlapOSInstanceTestCase): ...@@ -1185,11 +1197,10 @@ class HttpFrontendTestCase(SlapOSInstanceTestCase):
return parsed_parameter_dict return parsed_parameter_dict
def getMasterPartitionPath(self): def getMasterPartitionPath(self):
# partition with etc/nginx-rejected-slave.conf
return [ return [
q for q in glob.glob(os.path.join(self.instance_path, '*',)) q for q in glob.glob(os.path.join(self.instance_path, '*',))
if os.path.exists( if os.path.exists(
os.path.join(q, 'etc', 'nginx-rejected-slave.conf'))][0] os.path.join(q, 'etc', 'nginx-master-introspection.conf'))][0]
def parseConnectionParameterDict(self): def parseConnectionParameterDict(self):
return self.parseParameterDict( return self.parseParameterDict(
...@@ -1461,6 +1472,7 @@ class TestMasterRequestDomain(HttpFrontendTestCase, TestDataMixin): ...@@ -1461,6 +1472,7 @@ class TestMasterRequestDomain(HttpFrontendTestCase, TestDataMixin):
self.assertKeyWithPop('monitor-setup-url', parameter_dict) self.assertKeyWithPop('monitor-setup-url', parameter_dict)
self.assertBackendHaproxyStatisticUrl(parameter_dict) self.assertBackendHaproxyStatisticUrl(parameter_dict)
self.assertKedifaKeysWithPop(parameter_dict, 'master-') self.assertKedifaKeysWithPop(parameter_dict, 'master-')
self.assertPublishFailsafeErrorPromiseEmptyWithPop(parameter_dict)
self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict) self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict)
self.assertNodeInformationWithPop(parameter_dict) self.assertNodeInformationWithPop(parameter_dict)
...@@ -1493,6 +1505,7 @@ class TestMasterRequest(HttpFrontendTestCase, TestDataMixin): ...@@ -1493,6 +1505,7 @@ class TestMasterRequest(HttpFrontendTestCase, TestDataMixin):
self.assertKeyWithPop('monitor-setup-url', parameter_dict) self.assertKeyWithPop('monitor-setup-url', parameter_dict)
self.assertBackendHaproxyStatisticUrl(parameter_dict) self.assertBackendHaproxyStatisticUrl(parameter_dict)
self.assertKedifaKeysWithPop(parameter_dict, 'master-') self.assertKedifaKeysWithPop(parameter_dict, 'master-')
self.assertPublishFailsafeErrorPromiseEmptyWithPop(parameter_dict)
self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict) self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict)
self.assertNodeInformationWithPop(parameter_dict) self.assertNodeInformationWithPop(parameter_dict)
self.assertEqual( self.assertEqual(
...@@ -1601,6 +1614,7 @@ class TestMasterAIKCDisabledAIBCCDisabledRequest( ...@@ -1601,6 +1614,7 @@ class TestMasterAIKCDisabledAIBCCDisabledRequest(
self.assertKeyWithPop('monitor-setup-url', parameter_dict) self.assertKeyWithPop('monitor-setup-url', parameter_dict)
self.assertBackendHaproxyStatisticUrl(parameter_dict) self.assertBackendHaproxyStatisticUrl(parameter_dict)
self.assertKedifaKeysWithPop(parameter_dict, 'master-') self.assertKedifaKeysWithPop(parameter_dict, 'master-')
self.assertPublishFailsafeErrorPromiseEmptyWithPop(parameter_dict)
self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict) self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict)
self.assertKeyWithPop('kedifa-csr-certificate', parameter_dict) self.assertKeyWithPop('kedifa-csr-certificate', parameter_dict)
self.assertKeyWithPop('kedifa-csr-url', parameter_dict) self.assertKeyWithPop('kedifa-csr-url', parameter_dict)
...@@ -2073,6 +2087,7 @@ class TestSlave(SlaveHttpFrontendTestCase, TestDataMixin, AtsMixin): ...@@ -2073,6 +2087,7 @@ class TestSlave(SlaveHttpFrontendTestCase, TestDataMixin, AtsMixin):
self.assertKeyWithPop('monitor-setup-url', parameter_dict) self.assertKeyWithPop('monitor-setup-url', parameter_dict)
self.assertBackendHaproxyStatisticUrl(parameter_dict) self.assertBackendHaproxyStatisticUrl(parameter_dict)
self.assertKedifaKeysWithPop(parameter_dict, 'master-') self.assertKedifaKeysWithPop(parameter_dict, 'master-')
self.assertPublishFailsafeErrorPromiseEmptyWithPop(parameter_dict)
self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict) self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict)
self.assertNodeInformationWithPop(parameter_dict) self.assertNodeInformationWithPop(parameter_dict)
...@@ -5169,6 +5184,7 @@ class TestSlaveSlapOSMasterCertificateCompatibility( ...@@ -5169,6 +5184,7 @@ class TestSlaveSlapOSMasterCertificateCompatibility(
self.assertBackendHaproxyStatisticUrl(parameter_dict) self.assertBackendHaproxyStatisticUrl(parameter_dict)
self.assertKedifaKeysWithPop(parameter_dict, 'master-') self.assertKedifaKeysWithPop(parameter_dict, 'master-')
self.assertNodeInformationWithPop(parameter_dict) self.assertNodeInformationWithPop(parameter_dict)
self.assertPublishFailsafeErrorPromiseEmptyWithPop(parameter_dict)
self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict) self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict)
expected_parameter_dict = { expected_parameter_dict = {
...@@ -5676,6 +5692,7 @@ class TestSlaveSlapOSMasterCertificateCompatibilityUpdate( ...@@ -5676,6 +5692,7 @@ class TestSlaveSlapOSMasterCertificateCompatibilityUpdate(
self.assertBackendHaproxyStatisticUrl(parameter_dict) self.assertBackendHaproxyStatisticUrl(parameter_dict)
self.assertKedifaKeysWithPop(parameter_dict, 'master-') self.assertKedifaKeysWithPop(parameter_dict, 'master-')
self.assertNodeInformationWithPop(parameter_dict) self.assertNodeInformationWithPop(parameter_dict)
self.assertPublishFailsafeErrorPromiseEmptyWithPop(parameter_dict)
self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict) self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict)
expected_parameter_dict = { expected_parameter_dict = {
...@@ -5768,6 +5785,7 @@ class TestSlaveCiphers(SlaveHttpFrontendTestCase, TestDataMixin): ...@@ -5768,6 +5785,7 @@ class TestSlaveCiphers(SlaveHttpFrontendTestCase, TestDataMixin):
self.assertBackendHaproxyStatisticUrl(parameter_dict) self.assertBackendHaproxyStatisticUrl(parameter_dict)
self.assertKedifaKeysWithPop(parameter_dict, 'master-') self.assertKedifaKeysWithPop(parameter_dict, 'master-')
self.assertNodeInformationWithPop(parameter_dict) self.assertNodeInformationWithPop(parameter_dict)
self.assertPublishFailsafeErrorPromiseEmptyWithPop(parameter_dict)
self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict) self.assertRejectedSlavePromiseEmptyWithPop(parameter_dict)
expected_parameter_dict = { expected_parameter_dict = {
...@@ -6035,6 +6053,7 @@ class TestSlaveRejectReportUnsafeDamaged(SlaveHttpFrontendTestCase): ...@@ -6035,6 +6053,7 @@ class TestSlaveRejectReportUnsafeDamaged(SlaveHttpFrontendTestCase):
self.assertBackendHaproxyStatisticUrl(parameter_dict) self.assertBackendHaproxyStatisticUrl(parameter_dict)
self.assertKedifaKeysWithPop(parameter_dict, 'master-') self.assertKedifaKeysWithPop(parameter_dict, 'master-')
self.assertNodeInformationWithPop(parameter_dict) self.assertNodeInformationWithPop(parameter_dict)
self.assertPublishFailsafeErrorPromiseEmptyWithPop(parameter_dict)
self.assertRejectedSlavePromiseWithPop(parameter_dict) self.assertRejectedSlavePromiseWithPop(parameter_dict)
expected_parameter_dict = { expected_parameter_dict = {
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -2,9 +2,9 @@ T-0:bootstrap-monitor EXITED ...@@ -2,9 +2,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -3,13 +3,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -3,13 +3,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -8,13 +8,14 @@ T-0/etc/plugin/caucased-backend-client.py ...@@ -8,13 +8,14 @@ T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-2.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-2.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED ...@@ -4,9 +4,9 @@ T-0:bootstrap-monitor EXITED
T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING T-0:caucased-backend-client-{hash-generic}-on-watch RUNNING
T-0:certificate_authority-{hash-generic}-on-watch RUNNING T-0:certificate_authority-{hash-generic}-on-watch RUNNING
T-0:crond-{hash-generic}-on-watch RUNNING T-0:crond-{hash-generic}-on-watch RUNNING
T-0:master-introspection-server-{hash-master-introspection}-on-watch RUNNING
T-0:monitor-httpd-{hash-generic}-on-watch RUNNING T-0:monitor-httpd-{hash-generic}-on-watch RUNNING
T-0:monitor-httpd-graceful EXITED T-0:monitor-httpd-graceful EXITED
T-0:rejected-slave-publish-{hash-rejected-slave-publish}-on-watch RUNNING
T-1:bootstrap-monitor EXITED T-1:bootstrap-monitor EXITED
T-1:caucase-updater-on-watch RUNNING T-1:caucase-updater-on-watch RUNNING
T-1:caucased-{hash-generic}-on-watch RUNNING T-1:caucased-{hash-generic}-on-watch RUNNING
......
...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py ...@@ -7,13 +7,14 @@ T-0/etc/plugin/buildout-T-0-status.py
T-0/etc/plugin/caucased-backend-client.py T-0/etc/plugin/caucased-backend-client.py
T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py T-0/etc/plugin/check-backend-haproxy-statistic-url-frontend-node-1.py
T-0/etc/plugin/check-free-disk-space.py T-0/etc/plugin/check-free-disk-space.py
T-0/etc/plugin/master-introspection-server-ip-port-listening.py
T-0/etc/plugin/master-key-download-url-ready-promise.py T-0/etc/plugin/master-key-download-url-ready-promise.py
T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py T-0/etc/plugin/master-key-generate-auth-url-ready-promise.py
T-0/etc/plugin/master-key-upload-url-ready-promise.py T-0/etc/plugin/master-key-upload-url-ready-promise.py
T-0/etc/plugin/monitor-bootstrap-status.py T-0/etc/plugin/monitor-bootstrap-status.py
T-0/etc/plugin/monitor-http-frontend.py T-0/etc/plugin/monitor-http-frontend.py
T-0/etc/plugin/monitor-httpd-listening-on-tcp.py T-0/etc/plugin/monitor-httpd-listening-on-tcp.py
T-0/etc/plugin/rejected-slave-publish-ip-port-listening.py T-0/etc/plugin/publish-failsafe-error.py
T-0/etc/plugin/rejected-slave.py T-0/etc/plugin/rejected-slave.py
T-1/etc/plugin/__init__.py T-1/etc/plugin/__init__.py
T-1/etc/plugin/buildout-T-1-status.py T-1/etc/plugin/buildout-T-1-status.py
......
...@@ -49,7 +49,6 @@ rpy2 = 2.4.0 ...@@ -49,7 +49,6 @@ rpy2 = 2.4.0
pydot = 1.0.28 pydot = 1.0.28
xlrd = 0.9.3 xlrd = 0.9.3
xlwt = 0.7.5 xlwt = 0.7.5
scipy = 0.13.3
simpy = 3.0.5 simpy = 3.0.5
zope.dottedname = 4.1.0 zope.dottedname = 4.1.0
tablib = 0.10.0 tablib = 0.10.0
......
...@@ -46,7 +46,7 @@ from slapos.testing.testcase import ( ...@@ -46,7 +46,7 @@ from slapos.testing.testcase import (
makeModuleSetUpAndTestCaseClass, makeModuleSetUpAndTestCaseClass,
) )
old_software_release_url = 'https://lab.nexedi.com/nexedi/slapos/raw/1.0.167.6/software/erp5/software.cfg' old_software_release_url = 'https://lab.nexedi.com/nexedi/slapos/raw/1.0.167.7/software/erp5/software.cfg'
new_software_release_url = os.path.abspath( new_software_release_url = os.path.abspath(
os.path.join(os.path.dirname(__file__), '..', 'software.cfg')) os.path.join(os.path.dirname(__file__), '..', 'software.cfg'))
......
...@@ -50,6 +50,8 @@ revision = v1.17.3-0-g24a552b90b ...@@ -50,6 +50,8 @@ revision = v1.17.3-0-g24a552b90b
[gowork] [gowork]
# Fails with current default golang1.18
golang = ${golang1.17:location}
install = install =
${go_github.com_grafana_loki:location}:./cmd/loki ${go_github.com_grafana_loki:location}:./cmd/loki
${go_github.com_grafana_loki:location}:./cmd/promtail ${go_github.com_grafana_loki:location}:./cmd/promtail
......
...@@ -51,7 +51,6 @@ async-generator = 1.10 ...@@ -51,7 +51,6 @@ async-generator = 1.10
backports-abc = 0.5 backports-abc = 0.5
backports.shutil-get-terminal-size = 1.0.0 backports.shutil-get-terminal-size = 1.0.0
bleach = 3.2.1 bleach = 3.2.1
cycler = 0.10.0
defusedxml = 0.6.0 defusedxml = 0.6.0
entrypoints = 0.3 entrypoints = 0.3
ipykernel = 5.3.4:whl ipykernel = 5.3.4:whl
...@@ -69,8 +68,6 @@ nest-asyncio = 1.4.3 ...@@ -69,8 +68,6 @@ nest-asyncio = 1.4.3
nbclient = 0.5.1 nbclient = 0.5.1
nbformat = 5.0.8 nbformat = 5.0.8
notebook = 6.1.5 notebook = 6.1.5
numpy = 1.14.6
pandas = 0.25.3
pandocfilters = 1.4.3 pandocfilters = 1.4.3
prompt-toolkit = 1.0.13 prompt-toolkit = 1.0.13
ptyprocess = 0.5.1 ptyprocess = 0.5.1
...@@ -95,7 +92,6 @@ pickleshare = 0.7.4 ...@@ -95,7 +92,6 @@ pickleshare = 0.7.4
prometheus-client = 0.9.0 prometheus-client = 0.9.0
scandir = 1.5 scandir = 1.5
pytz = 2020.4 pytz = 2020.4
scipy = 1.0.1
singledispatch = 3.4.0.3 singledispatch = 3.4.0.3
wcwidth = 0.1.7 wcwidth = 0.1.7
jupyter = 1.0.0 jupyter = 1.0.0
......
Tests for Mosquitto software release
from setuptools import setup, find_packages
version = "0.0.1.dev0"
name = "slapos.test.mosquitto"
with open("README.md") as f:
long_description = f.read()
setup(
name=name,
version=version,
description="Test for SlapOS Mosquitto",
long_description=long_description,
long_description_content_type="text/markdown",
maintainer="Nexedi",
maintainer_email="info@nexedi.com",
url="https://lab.nexedi.com/nexedi/slapos",
packages=find_packages(),
install_requires=[
"slapos.core",
"slapos.libnetworkcache",
"erp5.util",
"requests",
"paho-mqtt",
],
zip_safe=True,
test_suite="test",
)
import os
import time
import paho.mqtt.client as mqtt
import paho.mqtt.publish as publish
from slapos.testing.testcase import makeModuleSetUpAndTestCaseClass
setUpModule, SlapOSInstanceTestCase = makeModuleSetUpAndTestCaseClass(
os.path.abspath(
os.path.join(os.path.dirname(__file__), '..', 'software.cfg')))
class TestMosquitto(SlapOSInstanceTestCase):
"""
Test if mosquitto service can publish and subscribe
to specific topics with custom authentication ...
"""
def on_connect(self, client, userdata, flags, rc):
client.subscribe("test")
self.code = rc
def on_message(self, client, userdata, msg):
self.topic = msg.topic
self.payload = str(msg.payload.decode())
def test_topic_ipv4(self):
host = self.computer_partition.getConnectionParameterDict()["ipv4"]
username = self.computer_partition.getConnectionParameterDict()["username"]
password = self.computer_partition.getConnectionParameterDict()["password"]
topic = "test"
payload = "Hello, World!"
client = mqtt.Client()
client.on_connect = self.on_connect
client.on_message = self.on_message
client.username_pw_set(username=f"{username}", password=f"{password}")
client.connect(f"{host}", 1883, 10)
client.loop_start()
publish.single(
topic=topic,
payload=payload,
hostname=f"{host}",
auth={ "username": f"{username}", "password": f"{password}" }
)
time.sleep(10)
client.loop_stop()
self.assertEqual(self.code, 0)
self.assertEqual(self.topic, topic)
def test_payload_ipv4(self):
host = self.computer_partition.getConnectionParameterDict()["ipv4"]
username = self.computer_partition.getConnectionParameterDict()["username"]
password = self.computer_partition.getConnectionParameterDict()["password"]
topic = "test"
payload = "Hello, World!"
client = mqtt.Client()
client.on_connect = self.on_connect
client.on_message = self.on_message
client.username_pw_set(username=f"{username}", password=f"{password}")
client.connect(f"{host}", 1883, 10)
client.loop_start()
publish.single(
topic=topic,
payload=payload,
hostname=f"{host}",
auth={ "username": f"{username}", "password": f"{password}" }
)
time.sleep(10)
client.loop_stop()
self.assertEqual(self.code, 0)
self.assertEqual(self.payload, payload)
def test_topic_ipv6(self):
host = self.computer_partition.getConnectionParameterDict()["ipv6"]
username = self.computer_partition.getConnectionParameterDict()["username"]
password = self.computer_partition.getConnectionParameterDict()["password"]
topic = "test"
payload = "Hello, World!"
client = mqtt.Client()
client.on_connect = self.on_connect
client.on_message = self.on_message
client.username_pw_set(username=f"{username}", password=f"{password}")
client.connect(f"{host}", 1883, 10)
client.loop_start()
publish.single(
topic=topic,
payload=payload,
hostname=f"{host}",
auth={ "username": f"{username}", "password": f"{password}" }
)
time.sleep(10)
client.loop_stop()
self.assertEqual(self.code, 0)
self.assertEqual(self.topic, topic)
def test_payload_ipv6(self):
host = self.computer_partition.getConnectionParameterDict()["ipv6"]
username = self.computer_partition.getConnectionParameterDict()["username"]
password = self.computer_partition.getConnectionParameterDict()["password"]
topic = "test"
payload = "Hello, World!"
client = mqtt.Client()
client.on_connect = self.on_connect
client.on_message = self.on_message
client.username_pw_set(username=f"{username}", password=f"{password}")
client.connect(f"{host}", 1883, 10)
client.loop_start()
publish.single(
topic=topic,
payload=payload,
hostname=f"{host}",
auth={ "username": f"{username}", "password": f"{password}" }
)
time.sleep(10)
client.loop_stop()
self.assertEqual(self.code, 0)
self.assertEqual(self.payload, payload)
...@@ -24,23 +24,23 @@ md5sum = 6e0a052bd0ca08cc0c7b4880d3deffcc ...@@ -24,23 +24,23 @@ md5sum = 6e0a052bd0ca08cc0c7b4880d3deffcc
[template-lte-enb-epc] [template-lte-enb-epc]
_update_hash_filename_ = instance-enb-epc.jinja2.cfg _update_hash_filename_ = instance-enb-epc.jinja2.cfg
md5sum = da99546afedb6f443bfd767ab054763d md5sum = 833667743c693b8d5f78a2527b275a9e
[template-lte-enb] [template-lte-enb]
_update_hash_filename_ = instance-enb.jinja2.cfg _update_hash_filename_ = instance-enb.jinja2.cfg
md5sum = 689a1ace1f197663ff7c27c31862b275 md5sum = ec127e2da004e52a516a7f499d7c7652
[template-lte-gnb-epc] [template-lte-gnb-epc]
_update_hash_filename_ = instance-gnb-epc.jinja2.cfg _update_hash_filename_ = instance-gnb-epc.jinja2.cfg
md5sum = 5455d0685f3bad94dbbdeaa772a7647f md5sum = 1f0b18cb6d70466d002b378bb931e7da
[template-lte-epc] [template-lte-epc]
_update_hash_filename_ = instance-epc.jinja2.cfg _update_hash_filename_ = instance-epc.jinja2.cfg
md5sum = 7863ada6fe3062b7f62e61cb973fa0fc md5sum = 99c05a34678adb5a70aa64ecf2ee4e35
[template-lte-gnb] [template-lte-gnb]
_update_hash_filename_ = instance-gnb.jinja2.cfg _update_hash_filename_ = instance-gnb.jinja2.cfg
md5sum = 82674b93d0d7edb09fd85a8062a387bb md5sum = 58ee1663f86db0bbc4ccaf27831d2f0c
[template-lte-mme] [template-lte-mme]
_update_hash_filename_ = instance-mme.jinja2.cfg _update_hash_filename_ = instance-mme.jinja2.cfg
...@@ -48,11 +48,11 @@ md5sum = 728f4d3ae248710c23e4b73eea4d628e ...@@ -48,11 +48,11 @@ md5sum = 728f4d3ae248710c23e4b73eea4d628e
[template-lte-ue-lte] [template-lte-ue-lte]
_update_hash_filename_ = instance-ue-lte.jinja2.cfg _update_hash_filename_ = instance-ue-lte.jinja2.cfg
md5sum = 8f2f6ff6f242546b2fef3bd559ba887d md5sum = 8888be35fa6e6f3e69d9373002a0e06e
[template-lte-ue-nr] [template-lte-ue-nr]
_update_hash_filename_ = instance-ue-nr.jinja2.cfg _update_hash_filename_ = instance-ue-nr.jinja2.cfg
md5sum = a8388fe893ad251bba929ef9047935a6 md5sum = 94ca609dc564d7ed95db09e1fa029208
[ue_db.jinja2.cfg] [ue_db.jinja2.cfg]
filename = config/ue_db.jinja2.cfg filename = config/ue_db.jinja2.cfg
...@@ -108,7 +108,7 @@ md5sum = 5bf57a9074ea5b054d999789cbbe2c87 ...@@ -108,7 +108,7 @@ md5sum = 5bf57a9074ea5b054d999789cbbe2c87
[cpu-temperature-promise] [cpu-temperature-promise]
_update_hash_filename_ = promise/check_cpu_temperature.py _update_hash_filename_ = promise/check_cpu_temperature.py
md5sum = 979a5a3a1eb9d0b081fa014baeef706f md5sum = 6812310b65c2d95815afc2b034a5f90f
[interface-up-promise] [interface-up-promise]
_update_hash_filename_ = promise/check_interface_up.py _update_hash_filename_ = promise/check_interface_up.py
......
...@@ -89,7 +89,9 @@ lte-enb-request = ${lte-enb-request:connection-monitor-base-url} ...@@ -89,7 +89,9 @@ lte-enb-request = ${lte-enb-request:connection-monitor-base-url}
[cpu-temperature-promise] [cpu-temperature-promise]
recipe = slapos.cookbook:promise.plugin recipe = slapos.cookbook:promise.plugin
eggs = slapos.core eggs =
slapos.core
python-dateutil
file = {{ cpu_temperature_promise }} file = {{ cpu_temperature_promise }}
output = ${directory:plugins}/check-cpu-temperature.py output = ${directory:plugins}/check-cpu-temperature.py
config-testing = {{ slapparameter_dict.get("testing", False) }} config-testing = {{ slapparameter_dict.get("testing", False) }}
......
...@@ -204,7 +204,9 @@ config-stats-period = {{ slapparameter_dict.get("enb_stats_fetch_period", 60) }} ...@@ -204,7 +204,9 @@ config-stats-period = {{ slapparameter_dict.get("enb_stats_fetch_period", 60) }}
[cpu-temperature-promise] [cpu-temperature-promise]
recipe = slapos.cookbook:promise.plugin recipe = slapos.cookbook:promise.plugin
eggs = slapos.core eggs =
slapos.core
python-dateutil
file = {{ cpu_temperature_promise }} file = {{ cpu_temperature_promise }}
output = ${directory:plugins}/check-cpu-temperature.py output = ${directory:plugins}/check-cpu-temperature.py
config-testing = {{ slapparameter_dict.get("testing", False) }} config-testing = {{ slapparameter_dict.get("testing", False) }}
......
...@@ -78,7 +78,9 @@ lte-mme-request = ${lte-mme-request:connection-monitor-base-url} ...@@ -78,7 +78,9 @@ lte-mme-request = ${lte-mme-request:connection-monitor-base-url}
[cpu-temperature-promise] [cpu-temperature-promise]
recipe = slapos.cookbook:promise.plugin recipe = slapos.cookbook:promise.plugin
eggs = slapos.core eggs =
slapos.core
python-dateutil
file = {{ cpu_temperature_promise }} file = {{ cpu_temperature_promise }}
output = ${directory:plugins}/check-cpu-temperature.py output = ${directory:plugins}/check-cpu-temperature.py
config-testing = {{ slapparameter_dict.get("testing", False) }} config-testing = {{ slapparameter_dict.get("testing", False) }}
......
...@@ -89,7 +89,9 @@ lte-gnb-request = ${lte-gnb-request:connection-monitor-base-url} ...@@ -89,7 +89,9 @@ lte-gnb-request = ${lte-gnb-request:connection-monitor-base-url}
[cpu-temperature-promise] [cpu-temperature-promise]
recipe = slapos.cookbook:promise.plugin recipe = slapos.cookbook:promise.plugin
eggs = slapos.core eggs =
slapos.core
python-dateutil
file = {{ cpu_temperature_promise }} file = {{ cpu_temperature_promise }}
output = ${directory:plugins}/check-cpu-temperature.py output = ${directory:plugins}/check-cpu-temperature.py
config-testing = {{ slapparameter_dict.get("testing", False) }} config-testing = {{ slapparameter_dict.get("testing", False) }}
......
...@@ -204,7 +204,9 @@ config-stats-period = {{ slapparameter_dict.get("enb_stats_fetch_period", 60) }} ...@@ -204,7 +204,9 @@ config-stats-period = {{ slapparameter_dict.get("enb_stats_fetch_period", 60) }}
[cpu-temperature-promise] [cpu-temperature-promise]
recipe = slapos.cookbook:promise.plugin recipe = slapos.cookbook:promise.plugin
eggs = slapos.core eggs =
slapos.core
python-dateutil
file = {{ cpu_temperature_promise }} file = {{ cpu_temperature_promise }}
output = ${directory:plugins}/check-cpu-temperature.py output = ${directory:plugins}/check-cpu-temperature.py
config-testing = {{ slapparameter_dict.get("testing", False) }} config-testing = {{ slapparameter_dict.get("testing", False) }}
......
...@@ -132,7 +132,9 @@ config-sdr = {{ sdr }} ...@@ -132,7 +132,9 @@ config-sdr = {{ sdr }}
[cpu-temperature-promise] [cpu-temperature-promise]
recipe = slapos.cookbook:promise.plugin recipe = slapos.cookbook:promise.plugin
eggs = slapos.core eggs =
slapos.core
python-dateutil
file = {{ cpu_temperature_promise }} file = {{ cpu_temperature_promise }}
output = ${directory:plugins}/check-cpu-temperature.py output = ${directory:plugins}/check-cpu-temperature.py
config-testing = {{ slapparameter_dict.get("testing", False) }} config-testing = {{ slapparameter_dict.get("testing", False) }}
......
...@@ -135,7 +135,9 @@ config-sdr = {{ sdr }} ...@@ -135,7 +135,9 @@ config-sdr = {{ sdr }}
[cpu-temperature-promise] [cpu-temperature-promise]
recipe = slapos.cookbook:promise.plugin recipe = slapos.cookbook:promise.plugin
eggs = slapos.core eggs =
slapos.core
python-dateutil
file = {{ cpu_temperature_promise }} file = {{ cpu_temperature_promise }}
output = ${directory:plugins}/check-cpu-temperature.py output = ${directory:plugins}/check-cpu-temperature.py
config-testing = {{ slapparameter_dict.get("testing", False) }} config-testing = {{ slapparameter_dict.get("testing", False) }}
......
...@@ -79,7 +79,7 @@ class RunPromise(GenericPromise): ...@@ -79,7 +79,7 @@ class RunPromise(GenericPromise):
data = psutil.sensors_temperatures() data = psutil.sensors_temperatures()
cpu_temp = data['coretemp'][0][1] cpu_temp = data['coretemp'][0][1]
l = get_data_interval(self.__log_file, max_avg_temp_duration) l = get_data_interval(self.__log_file, max_avg_temp_duration) or [{'cpu_temperature': cpu_temp}]
avg_temp = sum(map(lambda x: x['cpu_temperature'], l)) / len(l) avg_temp = sum(map(lambda x: x['cpu_temperature'], l)) / len(l)
data = json.dumps({'cpu_temperature': cpu_temp, 'avg_cpu_temperature': avg_temp}) data = json.dumps({'cpu_temperature': cpu_temp, 'avg_cpu_temperature': avg_temp})
......
...@@ -117,7 +117,6 @@ filename = ue-nr.jinja2.cfg ...@@ -117,7 +117,6 @@ filename = ue-nr.jinja2.cfg
recipe = zc.recipe.egg recipe = zc.recipe.egg
eggs = eggs =
websocket-client websocket-client
python-dateutil
interpreter = pythonwitheggs interpreter = pythonwitheggs
[versions] [versions]
......
...@@ -192,7 +192,7 @@ class TestBan(ProFTPdTestCase): ...@@ -192,7 +192,7 @@ class TestBan(ProFTPdTestCase):
self._getConnection(password='wrong') self._getConnection(password='wrong')
# after that, even with a valid password we cannot connect # after that, even with a valid password we cannot connect
with self.assertRaisesRegex(SSHException, 'Connection reset by peer'): with self.assertRaises(Exception):
self._getConnection() self._getConnection()
# ban event is logged # ban event is logged
......
...@@ -161,7 +161,6 @@ setup = ${slapos-repository:location}/software/hugo/test/ ...@@ -161,7 +161,6 @@ setup = ${slapos-repository:location}/software/hugo/test/
egg = slapos.test.matomo egg = slapos.test.matomo
setup = ${slapos-repository:location}/software/matomo/test/ setup = ${slapos-repository:location}/software/matomo/test/
[slapos.test.jupyter-setup] [slapos.test.jupyter-setup]
<= setup-develop-egg <= setup-develop-egg
egg = slapos.test.jupyter egg = slapos.test.jupyter
...@@ -242,6 +241,11 @@ setup = ${slapos-repository:location}/software/erp5testnode/test/ ...@@ -242,6 +241,11 @@ setup = ${slapos-repository:location}/software/erp5testnode/test/
egg = slapos.test.beremiz_ide egg = slapos.test.beremiz_ide
setup = ${slapos-repository:location}/software/beremiz-ide/test/ setup = ${slapos-repository:location}/software/beremiz-ide/test/
[slapos.test.mosquitto-setup]
<= setup-develop-egg
egg = slapos.test.mosquitto
setup = ${slapos-repository:location}/software/mosquitto/test/
[slapos.test.peertube-setup] [slapos.test.peertube-setup]
<= setup-develop-egg <= setup-develop-egg
egg = slapos.test.peertube egg = slapos.test.peertube
...@@ -318,6 +322,7 @@ eggs += ...@@ -318,6 +322,7 @@ eggs +=
${slapos.test.matomo-setup:egg} ${slapos.test.matomo-setup:egg}
${slapos.test.metabase-setup:egg} ${slapos.test.metabase-setup:egg}
${slapos.test.monitor-setup:egg} ${slapos.test.monitor-setup:egg}
${slapos.test.mosquitto-setup:egg}
${slapos.test.nextcloud-setup:egg} ${slapos.test.nextcloud-setup:egg}
${slapos.test.nginx-push-stream-setup:egg} ${slapos.test.nginx-push-stream-setup:egg}
${slapos.test.ors-amarisoft-setup:egg} ${slapos.test.ors-amarisoft-setup:egg}
...@@ -382,7 +387,6 @@ context = ...@@ -382,7 +387,6 @@ context =
tests = tests =
json-schemas ${slapos.cookbook-setup:setup} json-schemas ${slapos.cookbook-setup:setup}
backupserver ${slapos.test.backupserver-setup:setup} backupserver ${slapos.test.backupserver-setup:setup}
beremiz-ide ${slapos.test.beremiz-ide-setup:setup} beremiz-ide ${slapos.test.beremiz-ide-setup:setup}
caddy-frontend ${slapos.test.caddy-frontend-setup:setup} caddy-frontend ${slapos.test.caddy-frontend-setup:setup}
...@@ -409,6 +413,7 @@ tests = ...@@ -409,6 +413,7 @@ tests =
matomo ${slapos.test.matomo-setup:setup} matomo ${slapos.test.matomo-setup:setup}
metabase ${slapos.test.metabase-setup:setup} metabase ${slapos.test.metabase-setup:setup}
monitor ${slapos.test.monitor-setup:setup} monitor ${slapos.test.monitor-setup:setup}
mosquitto ${slapos.test.mosquitto-setup:setup}
nextcloud ${slapos.test.nextcloud-setup:setup} nextcloud ${slapos.test.nextcloud-setup:setup}
nginx-push-stream ${slapos.test.nginx-push-stream-setup:setup} nginx-push-stream ${slapos.test.nginx-push-stream-setup:setup}
ors-amarisoft ${slapos.test.ors-amarisoft-setup:setup} ors-amarisoft ${slapos.test.ors-amarisoft-setup:setup}
...@@ -444,6 +449,7 @@ mysqlclient = 2.1.1 ...@@ -444,6 +449,7 @@ mysqlclient = 2.1.1
pexpect = 4.8.0 pexpect = 4.8.0
ptyprocess = 0.6.0 ptyprocess = 0.6.0
psycopg2 = 2.8.6 psycopg2 = 2.8.6
paho-mqtt = 1.5.0
# Patched eggs # Patched eggs
PyPDF2 = 1.26.0+SlapOSPatched001 PyPDF2 = 1.26.0+SlapOSPatched001
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
[instance-theia] [instance-theia]
_update_hash_filename_ = instance-theia.cfg.jinja.in _update_hash_filename_ = instance-theia.cfg.jinja.in
md5sum = 3d00572afdd311ba8b4fc8b6ad0ac4b6 md5sum = bd79a9e6306b321414b9f83524308e5f
[instance] [instance]
_update_hash_filename_ = instance.cfg.in _update_hash_filename_ = instance.cfg.in
......
...@@ -360,7 +360,7 @@ output = $${directory:bin}/$${:_buildout_section_name_} ...@@ -360,7 +360,7 @@ output = $${directory:bin}/$${:_buildout_section_name_}
inline = inline =
#!/bin/sh #!/bin/sh
export HOME=$${directory:home} export HOME=$${directory:home}
export PATH=${java-jdk:location}/bin:${cli-utilities:PATH}:$HOME/.cargo/bin:$PATH export PATH=${cli-utilities:PATH}:$HOME/.cargo/bin:$PATH
export IPV6_SLAPRUNNER={{ ipv6_random }} export IPV6_SLAPRUNNER={{ ipv6_random }}
# Theia Backend # Theia Backend
......
...@@ -865,3 +865,7 @@ strict-rfc3339 = 0.7 ...@@ -865,3 +865,7 @@ strict-rfc3339 = 0.7
webcolors = 1.10 webcolors = 1.10
rfc3987 = 1.3.8 rfc3987 = 1.3.8
jsonpointer = 2.2 jsonpointer = 2.2
pandas = 0.19.2
numpy = 1.13.1
scipy = 0.19.0
ZConfig = 2.9.3
...@@ -70,7 +70,7 @@ md5sum = b95084ae9eed95a68eada45e28ef0c04 ...@@ -70,7 +70,7 @@ md5sum = b95084ae9eed95a68eada45e28ef0c04
[template] [template]
filename = instance.cfg.in filename = instance.cfg.in
md5sum = a75e8cf8fd664de164a88a680ddd2c9e md5sum = 74979d6743cdc7ce3d2f17680115458d
[template-erp5] [template-erp5]
filename = instance-erp5.cfg.in filename = instance-erp5.cfg.in
...@@ -102,4 +102,4 @@ md5sum = 5cf0316fdd17a940031e4083bbededd8 ...@@ -102,4 +102,4 @@ md5sum = 5cf0316fdd17a940031e4083bbededd8
[instance-wcfs.cfg.in] [instance-wcfs.cfg.in]
filename = instance-wcfs.cfg.in filename = instance-wcfs.cfg.in
md5sum = eb4be2669a9a56187cc4366272e11d18 md5sum = 0f921643a68e3a8de5529d653710ddca
{# instance that runs WCFS service associated with ZODB storage #} {# instance that runs WCFS service associated with ZODB storage #}
{% from "instance_zodb_base" import zodb_dict with context %} {% from "instance_zodb_base" import zodb_dict with context %}
{# q(text) returns urllib.quote_plus(text) #}
{% macro q(text) %}{{ urllib_parse.quote_plus(text) }}{% endmacro %}
{# build zurl to connect to configured ZODB #} {# build zurl to connect to configured ZODB #}
{% if len(zodb_dict) != 1 -%} {% if len(zodb_dict) != 1 -%}
...@@ -12,15 +14,18 @@ ...@@ -12,15 +14,18 @@
{% if zodb['type'] == 'zeo' -%} {% if zodb['type'] == 'zeo' -%}
{% set zurl = ('zeo://%s?storage=%s' % (z['server'], z['storage'])) -%} {% set zurl = ('zeo://%s?storage=%s' % (z['server'], z['storage'])) -%}
{% elif zodb['type'] == 'neo' -%} {% elif zodb['type'] == 'neo' -%}
{% set zurl = ('neo://%s@%s' % (z.pop('name'), z.pop('master_nodes'))) -%} {# neo(s)://[credentials@]master1,master2,...,masterN/name?options #}
{% set argv = [] -%} {# (see https://lab.nexedi.com/kirr/neo/blob/3e13fa06/go/neo/client.go#L417) #}
{% set i = 0 -%} {# If 'ca' in storage-dict, ssl is true. #}
{% for k,v in z|dictsort -%} {# (see https://lab.nexedi.com/nexedi/slapos/blob/397726e1/stack/erp5/instance-zodb-base.cfg.in#L17-21) #}
{% do argv.append('%s=%s' % (k,v)) -%} {% if "ca" in z -%}
{% endfor -%} {# ca=ca.crt;cert=my.crt;key=my.key (see https://lab.nexedi.com/kirr/neo/blob/3e13fa06/go/neo/client.go#L428) #}
{% if len(argv) > 0 -%} {% set zurl = 'neos://ca=%s;cert=%s;key=%s@' % (q(z.pop("ca")), q(z.pop("cert")), q(z.pop("key"))) -%}
{% set zurl = zurl + '&' + '?'.join(argv) -%} {% else -%}
{% set zurl = 'neo://' -%}
{% endif -%} {% endif -%}
{% set zurl = ('%s%s/%s' % (zurl, z.pop('master_nodes'), z.pop('name'))) -%}
{% set zurl = zurl + '?' + (z | dictsort | urlencode) -%}
{% else -%} {% else -%}
{% do assert(False, ("unsupported ZODB type", zodb)) -%} {% do assert(False, ("unsupported ZODB type", zodb)) -%}
{% endif -%} {% endif -%}
......
...@@ -206,6 +206,7 @@ url = {{ instance_wcfs_cfg_in }} ...@@ -206,6 +206,7 @@ url = {{ instance_wcfs_cfg_in }}
filename = instance_wcfs.cfg filename = instance_wcfs.cfg
extra-context = extra-context =
section parameter_dict dynamic-template-zope-parameters section parameter_dict dynamic-template-zope-parameters
import urllib_parse six.moves.urllib.parse
import-list = import-list =
file instance_zodb_base context:template-zodb-base file instance_zodb_base context:template-zodb-base
......
...@@ -227,7 +227,7 @@ scandir = 1.10.0 ...@@ -227,7 +227,7 @@ scandir = 1.10.0
setproctitle = 1.1.10 setproctitle = 1.1.10
setuptools-dso = 1.7 setuptools-dso = 1.7
six = 1.16.0 six = 1.16.0
slapos.cookbook = 1.0.291 slapos.cookbook = 1.0.297
slapos.core = 1.8.5 slapos.core = 1.8.5
slapos.extension.shared = 1.0 slapos.extension.shared = 1.0
slapos.libnetworkcache = 0.25 slapos.libnetworkcache = 0.25
...@@ -250,7 +250,7 @@ Werkzeug = 2.0.2 ...@@ -250,7 +250,7 @@ Werkzeug = 2.0.2
wheel = 0.35.1:whl wheel = 0.35.1:whl
xml-marshaller = 1.0.2 xml-marshaller = 1.0.2
zc.lockfile = 1.4 zc.lockfile = 1.4
ZConfig = 2.9.3 ZConfig = 3.6.1
zdaemon = 4.2.0 zdaemon = 4.2.0
zipp = 1.2.0:whl zipp = 1.2.0:whl
zodburi = 2.5.0 zodburi = 2.5.0
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment