1. 12 Dec, 2023 8 commits
    • Kirill Smelkov's avatar
      ZEO: Fix ZEO4-wc2 installation, take2 · f276d26f
      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
      f276d26f
    • Kirill Smelkov's avatar
      wendelin.core: tests: Pin ZopeUndo · b8148370
      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.
      b8148370
    • Kirill Smelkov's avatar
      wendelin.core: Unbreak tests · 7f7ff9c0
      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.
      7f7ff9c0
    • Joanne Hugé's avatar
      software/ors-amarisoft: update changelog · 6765c349
      Joanne Hugé authored
      6765c349
    • Jérome Perrin's avatar
    • Levin Zimmermann's avatar
      software/wendelin: Set with-max-rlimit-nofile default to true · 67a38887
      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).
      67a38887
    • Levin Zimmermann's avatar
      software/erp5: Add with-max-rlimit-nofile option · f55f0c0c
      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).
      f55f0c0c
    • Thomas Gambier's avatar
      software/cloudooo: fix input schema JSON · 8103c4f9
      Thomas Gambier authored
      8103c4f9
  2. 08 Dec, 2023 4 commits
  3. 07 Dec, 2023 1 commit
  4. 05 Dec, 2023 2 commits
  5. 04 Dec, 2023 18 commits
  6. 01 Dec, 2023 3 commits
  7. 30 Nov, 2023 3 commits
  8. 29 Nov, 2023 1 commit
    • Kirill Smelkov's avatar
      fixup! software/ors-amarisoft: remove redundant netconf supervision subsciption · f9819ca1
      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
      f9819ca1