- 12 Dec, 2023 8 commits
-
-
Kirill Smelkov authored
I already fixed ZEO4-wc2 installation once in 97832d95 (ZEO: Fix ZEO4-wc2 installation). That worked but, as it turned out, not fully: Even though correct ZEO4-wc2-repository is cloned, and correct ZEO4-wc2 develop-egg is installed, we don't tell buildout which egg-version of ZEO to use. This leads to the situation when buildout picks up _latest_ ZEO egg, when another egg, which depends on ZEO, is installed. For example wendelin.core/test-zodb4-wc2 was failing as Updating ZEO4-wc2-repository. Installing ZEO4-wc2. warning: no previously-included files matching '*.pyc' found anywhere in distribution Installing ZEO. Installing zodbtools. While: Installing zodbtools. Base installation request: 'zodbtools' Requirement of zodbtools==0.0.0.dev8: dateparser Requirement of zodbtools==0.0.0.dev8: six Requirement of zodbtools==0.0.0.dev8: pygolang>=0.0.0.dev6 Requirement of zodbtools==0.0.0.dev8: zope.interface Requirement of zodbtools==0.0.0.dev8: zodburi Requirement of zodbtools==0.0.0.dev8: ZODB Requirement of dateparser: tzlocal Requirement of dateparser: regex!=2019.02.19 Requirement of dateparser: pytz Requirement of dateparser: python-dateutil Requirement of pygolang>=0.0.0.dev6: Importing Requirement of pygolang>=0.0.0.dev6: decorator Requirement of pygolang>=0.0.0.dev6: six Requirement of pygolang>=0.0.0.dev6: gevent Requirement of zope.interface: setuptools Requirement of zodburi: ZEO Requirement of zodburi: ZConfig Requirement of zodburi: ZODB Requirement of ZODB: zodbpickle>=0.6.0 Requirement of ZODB: zope.interface Requirement of ZODB: zc.lockfile Requirement of ZODB: six Requirement of ZODB: transaction>=1.5.0 Requirement of ZODB: ZConfig Requirement of ZODB: BTrees>=4.2.0 Requirement of ZODB: persistent>=4.2.0 Requirement of tzlocal: pytz Requirement of python-dateutil: six>=1.5 Requirement of gevent: greenlet>=0.4.17 Requirement of gevent: setuptools Requirement of gevent: zope.interface Requirement of gevent: zope.event Requirement of ZEO: trollius Requirement of ZEO: futures Requirement of ZEO: zope.interface Requirement of ZEO: zdaemon Requirement of ZEO: ZConfig Requirement of ZEO: zc.lockfile Requirement of ZEO: persistent>=4.1.0 Requirement of ZEO: transaction>=2.0.3 Requirement of ZEO: six Requirement of ZEO: ZODB>=5.1.1 Requirement of zodbpickle>=0.6.0: setuptools Requirement of zc.lockfile: setuptools Requirement of transaction>=1.5.0: zope.interface Requirement of BTrees>=4.2.0: zope.interface>=5.0.0 Requirement of BTrees>=4.2.0: persistent>=4.1.0 Requirement of persistent>=4.2.0: cffi Requirement of persistent>=4.2.0: zope.interface Requirement of zope.event: setuptools Getting distribution for 'trollius'. Error: Picked: trollius = 2.2.1 -> Fix that by specifying which egg-version ZEO4/ZEO4-wc2 should be using. For the reference for ZODB we already do the same - specify egg-version for all ZODB5, ZODB4-wc2 and ZODB4: https://lab.nexedi.com/nexedi/slapos/blob/6765c349/component/ZODB/buildout.cfg#L52-72
-
Kirill Smelkov authored
ZEO[test] requires ZopeUndo, but we now never pin that anywhere in e.g. stack/slapos.cfg . Previously it was working without explicit pinning because Zope2, contrary to Zope4, pins ZopeUndo to 2.12.0. Build of test-zodb5.cfg was failing as Installing wendelin.core-python. While: Installing wendelin.core-python. Base installation request: 'wendelin.core[test]', 'pygolang[pyx.build]', 'neoppod[tests]', 'ZEO[test]' Requirement of ZEO[test]==5.4.0: zope.testrunner Requirement of ZEO[test]==5.4.0: zdaemon Requirement of ZEO[test]==5.4.0: msgpack<1 Requirement of ZEO[test]==5.4.0: mock Requirement of ZEO[test]==5.4.0: transaction Requirement of ZEO[test]==5.4.0: manuel Requirement of ZEO[test]==5.4.0: zope.testing Requirement of ZEO[test]==5.4.0: ZopeUndo Requirement of ZEO[test]==5.4.0: ZODB>=5.5.1 Requirement of ZEO[test]==5.4.0: ZConfig Requirement of ZEO[test]==5.4.0: trollius Requirement of ZEO[test]==5.4.0: futures Requirement of ZEO[test]==5.4.0: zope.interface Requirement of ZEO[test]==5.4.0: zdaemon Requirement of ZEO[test]==5.4.0: ZConfig Requirement of ZEO[test]==5.4.0: zc.lockfile Requirement of ZEO[test]==5.4.0: persistent>=4.1.0 Requirement of ZEO[test]==5.4.0: transaction>=2.0.3 Requirement of ZEO[test]==5.4.0: six Requirement of ZEO[test]==5.4.0: ZODB>=5.1.1 Requirement of neoppod[tests]==1.12.0: neoppod[admin,client,ctl,master,storage-importer,storage-mysqldb,storage-pymysql,storage-sqlite] Requirement of neoppod[tests]==1.12.0: psutil>=2 Requirement of neoppod[tests]==1.12.0: zope.testing Requirement of neoppod[tests]==1.12.0: coverage Requirement of neoppod[tests]==1.12.0: python-dateutil Requirement of neoppod[tests]==1.12.0: msgpack>=0.5.6 Requirement of pygolang[pyx.build]==0.1: wheel Requirement of pygolang[pyx.build]==0.1: setuptools_dso>=1.7 Requirement of pygolang[pyx.build]==0.1: setuptools Requirement of pygolang[pyx.build]==0.1: cython Requirement of pygolang[pyx.build]==0.1: Importing Requirement of pygolang[pyx.build]==0.1: decorator Requirement of pygolang[pyx.build]==0.1: six Requirement of pygolang[pyx.build]==0.1: gevent Requirement of wendelin.core[test]: ZEO Requirement of wendelin.core[test]: neoppod Requirement of wendelin.core[test]: scipy Requirement of wendelin.core[test]: pytest Requirement of wendelin.core[test]: psutil Requirement of wendelin.core[test]: six Requirement of wendelin.core[test]: pygolang>=0.1 Requirement of wendelin.core[test]: zodbtools>=0.0.0.dev8 Requirement of wendelin.core[test]: ZODB>=4 Requirement of wendelin.core[test]: numpy Requirement of zope.testrunner: zope.interface Requirement of zope.testrunner: zope.exceptions Requirement of zope.testrunner: six Requirement of zope.testrunner: setuptools Requirement of zdaemon: setuptools Requirement of zdaemon: ZConfig Requirement of mock: funcsigs>=1 Requirement of mock: six Requirement of transaction: zope.interface Requirement of manuel: six Requirement of manuel: setuptools Requirement of zope.testing: setuptools Getting distribution for 'ZopeUndo'. Error: Picked: ZopeUndo = 6.0 -> pin ZopeUndo to 5.0 - the last version that supports both py2 and py3.
-
Kirill Smelkov authored
After d8409763 (NEO: default ZODB was changed to 5) wendelin.core tests started to fail to build because files, that the tests extend from, were renamed on neoppod side. Example failure: An internal error occurred due to a bug in either zc.buildout or in a recipe being used: Traceback (most recent call last): File "/opt/slapos/eggs/zc.buildout-2.7.1+slapos019-py3.7.egg/zc/buildout/buildout.py", line 2359, in main user_defaults, command, args) File "/opt/slapos/eggs/zc.buildout-2.7.1+slapos019-py3.7.egg/zc/buildout/buildout.py", line 312, in __init__ data['buildout'], override)) File "/opt/slapos/eggs/zc.buildout-2.7.1+slapos019-py3.7.egg/zc/buildout/buildout.py", line 1974, in _open seen, processing)) File "/opt/slapos/eggs/zc.buildout-2.7.1+slapos019-py3.7.egg/zc/buildout/buildout.py", line 1974, in _open seen, processing)) File "/opt/slapos/eggs/zc.buildout-2.7.1+slapos019-py3.7.egg/zc/buildout/buildout.py", line 1974, in _open seen, processing)) File "/opt/slapos/eggs/zc.buildout-2.7.1+slapos019-py3.7.egg/zc/buildout/buildout.py", line 1940, in _open with open(downloaded_filename) as fp: FileNotFoundError: [Errno 2] No such file or directory: '/srv/slapgrid/slappart49/srv/project/slapos/software/neoppod/software-zodb5.cfg' -> Fix it by adjusting wendelin.core tests correspondingly. Similarly to 339490eb (components/zodbtools: reorganize test profiles) make each test profile to explicitly indicate which configuration it tests against. Drop support for testing pristine ZODB4 - now only ZODB5 and ZODB4-wc2 remain. We can drop test coverage for ZODB4 because slapos mainline switched to ZODB5 to be used by default in 1c51c4cd (stack/erp5: version up all zope stack (Zope 4.8.7), and because wendelin.core 2 works only with ZODB5 and ZODB4-wc2, but not with plain ZODB4.
-
Joanne Hugé authored
-
Jérome Perrin authored
-
Levin Zimmermann authored
In Wendelin we mostly always want to run our zopes with the soft limit set to the hard limit. /reviewed-by @jerome, @jm, @rafael, @vpelletier /reviewed-on nexedi/slapos!1465 --- This patch was already added in nexedi/slapos!1451, but removed (by force push), due to issues discussed in nexedi/slapos!1451 (comment 193296).
-
Levin Zimmermann authored
erp5@39369169 added the functionality to ERP5 to set its soft limit of allowed open file descriptors to the system wide hard limit. This parameter is useful for Wendelin based instances where the 1024 limit is easily reached. With this patch, this parameter can also be set via SlapOS, which simplifies usage of the Wendelin SR. /reviewed-by @jerome, @jm, @rafael, @vpelletier /reviewed-on !1465 --- This patch was already added in !1451, but removed (by force push), due to issues discussed in !1451 (comment 193296).
-
Thomas Gambier authored
-
- 08 Dec, 2023 4 commits
-
-
Thomas Gambier authored
Comments need to be at the start of the line.
-
Łukasz Nowak authored
The SLA unique_by_network was not requested at all when any SLA was set in the resilience. Now we put unique_by_network for all instances without SLA.
-
Thomas Gambier authored
this is needed for slapos-node package compilation
-
Thomas Gambier authored
This is a fixup of 5f6a2eb8.
-
- 07 Dec, 2023 1 commit
-
-
Łukasz Nowak authored
util-linux needs gcc 8+ in order to avoid error: libuuid/src/gen_uuid.c:536:33: error: initializer element is not constant
-
- 05 Dec, 2023 2 commits
-
-
Thomas Gambier authored
-
Jérome Perrin authored
See merge request nexedi/slapos!1489
-
- 04 Dec, 2023 18 commits
-
-
Thomas Gambier authored
See merge request nexedi/slapos!1457
-
Thomas Gambier authored
-
Thomas Gambier authored
-
Jérome Perrin authored
There are more recent versions, but they don't use pyproject.toml for metadata. Here we want a version with python3.11 support
-
Jérome Perrin authored
-
Jérome Perrin authored
This comes with a patch because the setup.py does not have version, which is not supported with our old tooling.
-
Jérome Perrin authored
This section is just for setup, it does not make sense to generate scripts here and it cause errors when another section uses the same technique.
-
Jérome Perrin authored
-
Jérome Perrin authored
-
Jérome Perrin authored
-
Jérome Perrin authored
-
Jérome Perrin authored
-
Jérome Perrin authored
Note that we don't use 3 yet because nexedi/pygolang@6446a0be
-
Thomas Gambier authored
-
Jérome Perrin authored
-
Jérome Perrin authored
Webrunner was using this and it's natural for users coming from slaprunner to find slapos wrapper in ~/bin/slapos, but where theia is very incompatible is that ~/bin/sla[TAB] will another slapos-standalone which will conflict with the one from theia.
-
Jérome Perrin authored
-
Jérome Perrin authored
-
- 01 Dec, 2023 3 commits
-
-
Julien Muchembled authored
Even if 'sed -i' is not posix and we should not use system sed this way: - even busybox supports this option - we already use it in so many other places that it does not make sense to to impose ourselves such extra dependency If we plan to fix all 'sed -i', alternatives to [sed] are: - patch - 'perl -pi -e' (perl is already built for openssl) And we should first have a mechanism to prevent misuse of system sed.
-
Kirill Smelkov authored
Going 0.139 -> 0.140 introduces the following changes: nexedi/slapos.toolbox@0.139...0.140 Test results: https://erp5js.nexedi.net/#/test_result_module/20231130-F8B9BE8D erp5 and slapos-master failed but the failures seem to be unrelated and it was already the same before on master: https://erp5js.nexedi.net/#!display_with_history?p.view=https%3A%2F%2Ferp5js.nexedi.net%2Fhateoas%2FERP5Document_getHateoas%3Fmode%3Dtraverse%26relative_url%3Dtest_result_module%252F20231130-5E15B7D0%252F22%26view%3Dview_result_history&p.editable=true&p.selection=8c63bd5c5d74765e1a10d5276fd66ae6914e949b&p.history=235a69ba30d222bbf3194ffbae652f43f6dabe87&p.selection_index=1&p.page=form&p.jio_key=test_result_module%2F20231130-5E15B7D0%2F22&n.jio_key=test_result_module%2F20231130-5E15B7D0%2F22&n.view=https%3A%2F%2Ferp5js.nexedi.net%2Fhateoas%2FERP5Document_getHateoas%3Fmode%3Dtraverse%26relative_url%3Dtest_result_module%252F20231130-5E15B7D0%252F22%26view%3Dview_result_history https://erp5js.nexedi.net/#!display_with_history?p.view=https%3A%2F%2Ferp5js.nexedi.net%2Fhateoas%2FERP5Document_getHateoas%3Fmode%3Dtraverse%26relative_url%3Dtest_result_module%252F20231130-5E15B7D0%252F57%26view%3Dview_result_history&p.editable=true&p.selection=8c63bd5c5d74765e1a10d5276fd66ae6914e949b&p.history=235a69ba30d222bbf3194ffbae652f43f6dabe87&p.selection_index=41&p.page=form&p.jio_key=test_result_module%2F20231130-5E15B7D0%2F57&n.jio_key=test_result_module%2F20231130-5E15B7D0%2F57&n.view=https%3A%2F%2Ferp5js.nexedi.net%2Fhateoas%2FERP5Document_getHateoas%3Fmode%3Dtraverse%26relative_url%3Dtest_result_module%252F20231130-5E15B7D0%252F57%26view%3Dview_result_history
-
Thomas Gambier authored
Now that testnodes are using ipv6 range, we can safely put back this check in place.
-
- 30 Nov, 2023 3 commits
-
-
Thomas Gambier authored
-
Thomas Gambier authored
Werkzeug 3.0.0 is not compatible with Python3.7: File "/opt/slapos/eggs/werkzeug-3.0.0-py3.7.egg/werkzeug/serving.py", line 76, in <module> t.Union["ssl.SSLContext", t.Tuple[str, t.Optional[str]], t.Literal["adhoc"]] AttributeError: module 'typing' has no attribute 'Literal
-
Thomas Gambier authored
Now that testnodes are using ipv6 range, we can safely put back this check in place. This reverts commit 51a16b0b. See merge request !1484
-
- 29 Nov, 2023 1 commit
-
-
Kirill Smelkov authored
- remove no longer used ru/lopcomm/supervision.jinja2.py - restore removed `+ keep on touching RU watchdog` comment. Now it relates to ru/lopcomm/stats which became responsible for this function. - move code of RU-netconf-connection promise to be located nearby stats service because this promise interacts with that service, and grouping code by interaction makes it easier to understand for humans. Previously RU-netconf-connection was interacting with supervision service whcsh is gone after the patch in question. - use double vertical space to delimit logical sections from each other. open questions: - before the patch in question stats code was reconnecting after each error with 10 seconds pause. Now it logs it wants to reconnect but does _not_ because top-level `while True` was removed. Was that intended? If it was not the intent then new stats code will fail after any single error and won't reconnect to RU by itself. /reviewed-by @lu.xu /reviewed-on nexedi/slapos!1483
-