- 24 Nov, 2023 38 commits
-
-
Jérome Perrin authored
This reverts commit 6c399134.
-
Jérome Perrin authored
this keeps the behavior of nodejs < 18 https://twitter.com/matteocollina/status/1640384245834055680
-
Jérome Perrin authored
This change the format or the (mostly) unused frontend parameter to support requesting more than one frontend and also enable the request of a frontend by default, so that requesting a frontend separately is no longer needed. The `frontend` parameter now also supports requesting frontends for specific paths on the ERP5 backend, the example below requests a frontend serving directly a web site, with the necessary rewrite rules: ```js { "frontend": { "default": { "internal-path": "/erp5/web_site_module/renderjs_runner/" } } } ``` The example below requests a default frontend to the erp5 root, to access the ZMI or erp5_xhtml_style interface and two web sites: ```js { "frontend": { "default": {}, "erp5js": { "internal-path": "/erp5/web_site_module/renderjs_runner/" }, "crm": { "internal-path": "/erp5/web_site_module/erp5_officejs_support_request_ui/" } } } ``` The example below has an explicit definition of the zope families using `zope-partition-dict` parameter, because there is more than one zope family, no frontend is requested by default: ```js { "zope-partition-dict": { "backoffice": { "family": "backoffice" }, "web": { "family": "web" }, "activities": { "family": "activities" } } } ``` Continuing this example, to have frontends for backoffice and web families, the frontend request can specify the families, like it is demonstrated in the example below. In this example, we don't specify an entry for "activities" family, so no frontend will be requested for this family. ```js { "frontend": { "backoffice": { "zope-family": "backoffice" }, "web": { "zope-family": "web", "internal-path": "/erp5/web_site_module/web_site/" } } "zope-partition-dict": { "backoffice": { "family": "backoffice" }, "web": { "family": "web" }, "activities": { "family": "activities" } } } ```
-
Jérome Perrin authored
These must be installed through dependencies
-
Jérome Perrin authored
on python3 we use lzma directly
-
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
-
Kazuhiko Shiozaki authored
-
Kazuhiko Shiozaki authored
if only bison exists in PATH, we will get an error: /path/to/bison: m4 subprocess failed: No such file or directory
-
Kazuhiko Shiozaki authored
also copy libperfschema.a in lib directory to build mroonga with MariaDB >= 10.5.
-
Thomas Gambier authored
-
Xavier Thompson authored
This concerns a case of resiliency in Theia: when a resilient Theia requests multiple import clones (by default only one is requested), e.g. when theia0 (export) has two import clones theia1 and theia2. Each clone requests a frontend for their theia service, which allows the Theia editor of the clone to be accessed without doing a takeover. Before this, all the import clones would request a frontend with the same name. This meant that only one frontend was allocated and might randomly redirect to one of the backup clones. See merge request nexedi/slapos!1481
-
Lu Xu authored
accidentally removed [slaplte.jinja2] _update_hash_filename_ = slaplte.jinja2 md5sum = from buildout.hash.cfg
-
Lu Xu authored
The Netconf subscriptions were added twice, causing the RU to reboot because there was no supervision check on the redundant subscription.
-
Lu Xu authored
The Ncclient does not have a timeout for taking notifications, causing it to wait indefinitely. This can result in the connection being lost while the waiting process is still ongoing.
-
Kirill Smelkov authored
After cell_list problem was fixed in the previous patch, now building enb.cfg in standalone mode fails on mme_addr: slapuser35@vifibcloud-rapidspace-hosting-018:~/srv/project/slapos/software/ors-amarisoft$ ./pythonwitheggs slapos-render-config.py Traceback (most recent call last): File "/srv/slapgrid/slappart35/srv/project/slapos/software/ors-amarisoft/./pythonwitheggs", line 47, in <module> exec(compile(__file__f.read(), __file__, "exec")) File "slapos-render-config.py", line 92, in <module> do('enb', {"tdd_ul_dl_config": "[Configuration 6] 5ms 5UL 3DL (maximum uplink)"}) File "slapos-render-config.py", line 90, in do j2render(cfg, json_params % locals()) File "slapos-render-config.py", line 38, in j2render f.write(r._render().decode()) File "/srv/slapgrid/slappart35/srv/runner/software/0b402c7d1e7c38a4324c836766690bb6/eggs/slapos.recipe.template-5.1-py3.9.egg/slapos/recipe/template/jinja2_template.py", line 215, in _render return template_object.render(**self.context).encode(self.encoding) File "/srv/slapgrid/slappart35/srv/runner/software/0b402c7d1e7c38a4324c836766690bb6/eggs/Jinja2-2.11.3-py3.9.egg/jinja2/environment.py", line 1090, in render self.environment.handle_exception() File "/srv/slapgrid/slappart35/srv/runner/software/0b402c7d1e7c38a4324c836766690bb6/eggs/Jinja2-2.11.3-py3.9.egg/jinja2/environment.py", line 832, in handle_exception reraise(*rewrite_traceback_stack(source=source)) File "/srv/slapgrid/slappart35/srv/runner/software/0b402c7d1e7c38a4324c836766690bb6/eggs/Jinja2-2.11.3-py3.9.egg/jinja2/_compat.py", line 28, in reraise raise value.with_traceback(tb) File "config/enb.jinja2.cfg", line 139, in top-level template code mme_addr: "{{ slap_configuration['configuration.mme_addr'] }}", jinja2.exceptions.UndefinedError: 'dict object' has no attribute 'configuration.mme_addr' -> Fix it by providing both mme_addr in addition to amf_addr. Now both enb.cfg and gnb.cfg render in standalone mode well. /cc @jhuge, @lu.xu, @xavier_thompson, @Daetalus
-
Kirill Smelkov authored
In b0c37a4a (software/ors-amarisoft: Start to generalize existing lopcomm/multicell into multiRU slowly) I deduplicated cell_list initialization and moved it into single place, but overlooked that enb.cfg build became broken in standalone mode: .../software/ors-amarisoft$ ./pythonwitheggs slapos-render-config.py Traceback (most recent call last): File "/srv/slapgrid/slappart35/srv/project/slapos/software/ors-amarisoft/./pythonwitheggs", line 47, in <module> exec(compile(__file__f.read(), __file__, "exec")) File "slapos-render-config.py", line 88, in <module> do('enb', {"tdd_ul_dl_config": "[Configuration 6] 5ms 5UL 3DL (maximum uplink)"}) File "slapos-render-config.py", line 86, in do j2render(cfg, json_params % locals()) File "slapos-render-config.py", line 34, in j2render f.write(r._render().decode()) File ".../eggs/slapos.recipe.template-5.1-py3.9.egg/slapos/recipe/template/jinja2_template.py", line 215, in _render return template_object.render(**self.context).encode(self.encoding) File ".../eggs/Jinja2-2.11.3-py3.9.egg/jinja2/environment.py", line 1090, in render self.environment.handle_exception() File ".../eggs/Jinja2-2.11.3-py3.9.egg/jinja2/environment.py", line 832, in handle_exception reraise(*rewrite_traceback_stack(source=source)) File ".../eggs/Jinja2-2.11.3-py3.9.egg/jinja2/_compat.py", line 28, in reraise raise value.with_traceback(tb) File "config/enb.jinja2.cfg", line 1, in top-level template code {%- set cell_count = cell_list|length %} jinja2.exceptions.UndefinedError: 'cell_list' is undefined -> Fix it by teaching enb.jinja2.cfg to also load cell list in standalone by itself. Not touching gnb.jinja2.cfg as currently gnb does not support multicell at all, and in the future it will be sole enb.cfg to handle both LTE and NR simultaneously. /cc @jhuge, @lu.xu, @xavier_thompson, @Daetalus
-
Kirill Smelkov authored
This currently has severl problems which we'll be fixing up one by one in the followup patches. /cc @jhuge, @lu.xu, @xavier_thompson, @Daetalus
-
Kirill Smelkov authored
Currently which config to render is hardcoded in this program and only of the is rendered - currently gnb. This leads to situation where it is easy to miss breakage of unselected config. -> Factor one config rendering into common routine as the preparatory step to render both enb.cfg and gnb.cfg /cc @jhuge, @lu.xu, @xavier_thompson, @Daetalus
-
Kirill Smelkov authored
software/ors-amarisoft: Start to put common code to load cells and radio units and handle them into slaplte package We will soon need to use that shared code not only from radio library under ru/ , but also from enb.jinja2.cfg and to fix slapos-render-config. /cc @jhuge, @lu.xu, @xavier_thompson, @Daetalus
-
Kirill Smelkov authored
After 8c841ce6 slapos-render-config.py got broken: (py3.venv) kirr@deca:~/src/wendelin/slapos/slapos/software/ors-amarisoft$ python slapos-render-config.py Traceback (most recent call last): File "/home/kirr/src/wendelin/slapos/slapos/software/ors-amarisoft/slapos-render-config.py", line 87, in <module> j2render(config, json_params) File "/home/kirr/src/wendelin/slapos/slapos/software/ors-amarisoft/slapos-render-config.py", line 34, in j2render f.write(r._render().decode()) ^^^^^^^^^^^ File "/home/kirr/src/wendelin/slapos/slapos.recipe.template/slapos/recipe/template/jinja2_template.py", line 215, in _render return template_object.render(**self.context).encode(self.encoding) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/kirr/src/wendelin/venv/py3.venv/lib/python3.11/site-packages/jinja2/environment.py", line 1301, in render self.environment.handle_exception() File "/home/kirr/src/wendelin/venv/py3.venv/lib/python3.11/site-packages/jinja2/environment.py", line 936, in handle_exception raise rewrite_traceback_stack(source=source) File "config/gnb.jinja2.cfg", line 586, in top-level template code drb_config: "{{ drb_file }}", ^^^^^^^^^^^^^^^^^^^^^^^^^ jinja2.exceptions.UndefinedError: 'drb_file' is undefined /cc @jhuge, @lu.xu, @xavier_thompson, @Daetalus
-
Jérome Perrin authored
We had to introduce a web page to bootstrap the web version of devtools because since https://bugs.chromium.org/p/chromium/issues/detail?id=1232509 chrome debugger port no longer serve such a page via HTTP. The URL also changed, /serve_file/@{version_hash}. pattern is no longer used, both the devtools and the websocket endpoint are in /devtools The test was made a bit more complete by actually making requests and trying to connect to websocket endpoints. Some problems were found with incognito and block-new-web-contents options: - they are boolean type, but the software parameter serialisation is XML, which as of today does not support boolean types. This is left TODO for now - When both --incognito and --block-new-web-contents are true, the command line flag was --incognito--block-new-web-contents, which is unknown and was ignored. Some minmal changes are included to fix this.
-
Jérome Perrin authored
This uses rbnacl-sodium which bundle an old version of libsodium that can not be compiled with gcc 12. This is an optional dependency to support ed25519 ssh keys, but we the slapos version of gitlab does not use ssh, only https, so we don't actually need to install this.
-
Jérome Perrin authored
-
Jérome Perrin authored
To prevent linking with system libtirpc if the corresponding system -dev package is installed
-
Jérome Perrin authored
We were using --without-ncurses but this does not prevent the build from using system package when ncurses-dev system package is installed.
-
Jérome Perrin authored
This was building against system library when ncurses-dev system package is installed
-
- 17 Nov, 2023 2 commits
-
-
Kirill Smelkov authored
By reusing recently added "split TAP" infrastructure we can adjust dnsmasq configuration to provide unique IPv6 to each RU. - ru_mac_addr becomes per-RU setting and without default. We talked with Lu, and since now all Lopcomm units are shipped from the factory with unique MAC, it both does not make sense to provide the default, and we can rely on all units to have different MACs and configure DHCP replies based on that. - No need to provide /64 network to every RU. We cannot actually do that anyway because normally SlapOS provides /71 address range for its slaptap. In the new configuration everything works with smaller networks just ok. /cc @jhuge, @xavier_thompson, @Daetalus /reviewed-by @lu.xu /reviewed-on nexedi/slapos!1472
-
Kirill Smelkov authored
Those options are not needed, because we need to only provide IPv6 address to RU, and also they are not very meaningful: in the current form we tell RU that DNS addresses sit at RU.addr+1 and RU.addr+2, i.e. in the IP range we give to RU and also at the addresses where no DNS server is actually running. It was probably a thinko to add those options initially. /cc @jhuge, @xavier_thompson, @Daetalus /reviewed-by @lu.xu /reviewed-on nexedi/slapos!1472
-