1. 30 Nov, 2020 6 commits
    • Jérome Perrin's avatar
      software/theia: run standalone slapos in a service · 9c2d1d19
      Jérome Perrin authored
      Until now, standalone subsystem was started as a daemon first time a terminal
      was openned and since it was running as daemon, stopping the theia instance
      did not stop any of the services running in the embedded slapos.
      
      Before nexedi/slapos.core!265 there was
      two supervisor running as daemon:
       - ~/srv/slapos/etc/supervisord.conf which runs slapos proxy etc
       - ~/srv/slapos/inst/etc/supervisord.conf with runs instances in the embedded
         slapos
      After, the second one runs as a service in the first one, but the first one
      was still running as daemon.
      
      This changes so that the first supervisor runs as a service managed by the
      Theia instance, so stopping Theia instance will effectively stop the services.
      
      When upgrading, running instances should continue to run as detached. To
      attach them to the new service, procedure could be something like this
      
      Stop supervisors inside Theia instance:
      
        supervisorctl -c ~/srv/slapos/etc/supervisord.conf shutdown
        supervisorctl -c ~/srv/slapos/inst/etc/supervisord.conf shutdown
      
      Restart slappartX:slapos-standalone-instance-XXX-on-watch from host slapos
      9c2d1d19
    • Jérome Perrin's avatar
    • Jérome Perrin's avatar
      component/bash-completion: new component · d0e37d41
      Jérome Perrin authored
      d0e37d41
    • Jérome Perrin's avatar
      software/theia: set TERMINFO · 1cf472fe
      Jérome Perrin authored
      We are observing some segmentation fault with python curses applications
      that might be because the TERMINFO are different from the system one.
      I did not debugged, but since I set this environment variable I did not
      observe any segmentation fault.
      
      By comparing strace, the invocations seems same with or without $TERMINFO.
      In both cases the termcaps from the correct ncurses are selected, this
      just seem to workaround for some reason.
      1cf472fe
    • Jérome Perrin's avatar
      version up: slapos.core 1.6.3 · 97e7c8f6
      Jérome Perrin authored
      97e7c8f6
    • Jérome Perrin's avatar
      Use nxdtest in SlapOS tests · 4371e39c
      Jérome Perrin authored
       * switch software/slapos-testing (`SlapOS.Eggs.UnitTest-*`) to use nxdtest and update README to describe how to run tests locally with nxdtest's runTestSuite. Switch tests to `python -m unittest` (or slight variations) instead of the deprecated `python setup.py`, except a few tests which only pass when invoked with `setup.py`.
       * switch software/slapos-sr-testing (`SlapOS.SoftwareReleases.IntegrationTest-*`) to use nxdtest and update README to describe how to run tests locally with nxdtest's runTestSuite. Switch all tests to `python -m unittest discover` intead of the deprecated `python setup.py` - which was especially problematic in these tests, because it sets `$PYTHONPATH` which affect subprocesses ran by the tests. In follow up commits we'll drop the workarounds for `$PYTHONPATH`.
      
      `EggTestSuite` becomes unused and will be removed in follow up changes.
      
      See merge request nexedi/slapos!862
      4371e39c
  2. 27 Nov, 2020 4 commits
    • Thomas Gambier's avatar
      software/nayuos: several improvements · d29781b2
      Thomas Gambier authored
       * use python3 (newest builds requires python3)
       * correctly exclude release directories during rsync so that resiliency
      works
       * use correct names for project/software/instances
      d29781b2
    • Jérome Perrin's avatar
      software/slapos-testing: use nxdtest · 1536ad2e
      Jérome Perrin authored
      We also try to switch the tests to use python -m unittest as a way of
      invoking tests, instead of the deprecated python setup.py test
      1536ad2e
    • Jérome Perrin's avatar
      component/pygolang: minimal -O support in [python-interpreter] · cfdc9b83
      Jérome Perrin authored
      When use this interpreter to run buildout, buildout will pre-compile eggs with
      different level of optimisations, for this it spawns sys.executable with -O
      option (see [1]). Since pymain does not support -O argument and python only
      support changing optimization level at startup, we can not easily handle -O
      argument, execpt by re-executing ourselves with PYTHONOPTIMIZE environment
      variable, which has same effect than setting -O flag
      
      1: https://lab.nexedi.com/nexedi/slapos.buildout/blob/488b2dfd3088cba7b322827c904fe1f93fba73e6/src/zc/buildout/easy_install.py#L1716-1722
      cfdc9b83
    • Jérome Perrin's avatar
      software/slapos-sr-testing: use nxdtest · 3a1e5628
      Jérome Perrin authored
      Change to run all tests with python -m unittest, which will allow us to
      remove workaround for the $PYTHONPATH set by setup.py test.
      
      For this we use `[python-interpreter]` which uses pygolang.main to behave
      like a "normal" python interpreter with eggs available, but without the
      usual problems of interpreters generated by zc.recipe.eggs - it supports
      all command line flags and have current directory in sys.path.
      
      Tests now have an explicit name, that we set to the software name as before,
      and the special test dynamically checking all profiles json schemas (part
      of slapos.cookbook egg, at the root of slapos repository),is named
      json-schemas. It is also changed to run as default tests in python2 and
      python3, not only in extras for python2.
      3a1e5628
  3. 26 Nov, 2020 4 commits
  4. 24 Nov, 2020 3 commits
  5. 20 Nov, 2020 5 commits
  6. 19 Nov, 2020 2 commits
  7. 18 Nov, 2020 6 commits
  8. 16 Nov, 2020 2 commits
  9. 12 Nov, 2020 1 commit
  10. 11 Nov, 2020 4 commits
  11. 10 Nov, 2020 3 commits
    • Jérome Perrin's avatar
      stack/erp5: stop using caucase managed certificate for balancer · 620c9332
      Jérome Perrin authored
      Revert "software/erp5: use a caucase managed certificate for balancer"
      
      This reverts commit 74d18b9d and also follow
      up fixup ( 555b26a2 ).
      
      We are not ready to use caucase here, there are still too many problems with
      caucase (keys are lost at each SR update etc) and design might still evolve,
      so let's go back to self signed certificate for now.
      
      Also remove the promise and the updater, since they are also not working and
      causing problems on instances that have been updated (and where the key no
      longer match the certificate)
      620c9332
    • Jérome Perrin's avatar
      fixup! software/erp5: use a caucase managed certificate for balancer · 555b26a2
      Jérome Perrin authored
      fix balancer CSR generation:
      
      Caucase rerequest uses a CSR *template* and use it to generate
      a new CSR with a new key, so we should not use the actual key to
      generate this CSR, because it is caucase rerequest job to generate
      the key.
      Also, we should be careful not to generate a new CSR every time this
      command run, otherwise a new key will be generated and a new CSR will
      be sent to caucase, but caucase will not sign it automatically (since
      we configure it to sign only one certificate).
      
      This means that the case of IP address changes is currently not
      supported automatically. To support it we would need to:
        - force generation of a new CSR template
        - force caucase rerequester to request a new certificate (by removing
        existing certificate)
        - force caucased to sign the new certificate
      
      This commit also fix indentation and remove simplefile macro that is no longer used
      555b26a2
    • Łukasz Nowak's avatar
      Feature Caddy Frontend Haproxy Active Check · fb49ccdb
      Łukasz Nowak authored
      See merge request !837
      fb49ccdb