1. 29 Jan, 2020 4 commits
    • Jérome Perrin's avatar
      Eggtest: support --shared_part_list · 325395e8
      Jérome Perrin authored
      Shared parts received from test node will be passed as
      SLAPOS_TEST_SHARED_PART_LIST environment variable to egg tests.
      
      This will be useful for SLAPOS-SR tests.
      325395e8
    • Jérome Perrin's avatar
      testnode: pass shared_part_list to runTestSuite who understand it · 35768fa2
      Jérome Perrin authored
      Some test suites who install software during the test, such as SLAPOS-SR
      tests, could benefit from reusing already installed shared parts.
      
      The convention is that --shared_part_list is a os.pathsep (:) separated
      list of paths of read-only shared parts in which the test is not allowed
      to write.
      35768fa2
    • Jérome Perrin's avatar
      testnode: SlapOS shared parts support · 316f23c0
      Jérome Perrin authored
      Shared parts speed up compilation time and is becoming the standard in
      SlapOS software installations, so it makes sense to use it in our test
      nodes, as it also gives one more opportunity to test this feature.
      
      erp5testnode configuration file supports a new shared_part_list option,
      that can be set to a \n separated list of paths to use for shared parts,
      following the same rules as slapos.core and slapos.recipe.cmmi (ie. the
      first ones are read-only and the last one is read-write).
      
      This shared_part_list option will be set in slapos.cfg used to compile
      both the "software for testnode" (ie. selenium-runner) and later the
      softwares under tests.
      The software under tests will also use a local directory for each test
      suite to install shared suite.
      
      The directory structure is now:
      
        srv/
          shared/
            (shared parts to install selenium runner)
          slapos/
            soft/
              (selenium-runner software)
          testnode/
            foo/ # test suite with reference foo
              inst/
                (partitions of tested software)
              shared/
                (shared parts to install tested software)
              soft/
                (tested software)
      
      and in the configuration srv/shared will be set as initial
      shared_part_list.
      
      When installing selenium-runner, srv/shared/ is used to write shared
      parts. These shared parts are never removed.
      
      When installing software under test, srv/shared/ and
      srv/testnode/foo/shared/ are used. If parts are found in srv/shared they
      are used, if they are not found, they are installed in
      srv/testnode/foo/shared/.
      
      In practice, this should mean that the shared parts installed by
      selenium-runner will be reused for all tested softwares and this should
      speed up initial installation of these softwares.
      
      Currently, nothing is implemented regarding removal of unused shared
      parts, but in our case:
       - srv/testnode/foo/shared/ will be removed when "foo" is removed.
       - srv/shared/ should be used only when installing selenium-runner.
      
      If this starts to use too much disk space, one quick and dirty
      workaround could be to destroy the test node instance and re-create it.
      316f23c0
    • Jérome Perrin's avatar
      sql_browser: use monaco editor · 2bc8f31b
      Jérome Perrin authored
      Use monaco editor with https://github.com/joe-re/sql-language-server
      completion provider bundled in
      https://lab.nexedi.com/jerome/monaco-editor-sql-completion-provider
      This completion provider is not perfect, but codemirror's one was not so
      good either. At least we can use monaco editor.
      
      Also add a quick "copy to cliboard" feature, which copies the table as
      html or in markdown format for text.
      
      And also fix Server-Timing header that was an obsolete syntax no longer
      supported by chrome.
      
      /reviewed-on nexedi/erp5!1036
      2bc8f31b
  2. 28 Jan, 2020 1 commit
    • Jérome Perrin's avatar
      calendar: More fixes with exceptions when not repeating · e9130ca7
      Jérome Perrin authored
      The fixes from !630
      were not enough, exceptions set on days were calendar did not repeat
      were also confusing other exceptions after this.
      
      Simplify implementation a lot, instead of keeping track of the next
      exception date, start by building a set of all exceptions dates and
      use membership of this set as a criterion to skip exceptions.
      
      /reviewed-on !1030
      e9130ca7
  3. 24 Jan, 2020 4 commits
    • Jérome Perrin's avatar
      CSPRNG in restricted python · 1764c526
      Jérome Perrin authored
      Allow python's cryptographically secure pseudorandom number generator for usage in restricted python and use it where it makes sense.
      
      This also change the API of `Person_generatePassword` which no longer allow to control the number of letters and numbers.
      
      /reviewed-on !847
      1764c526
    • Jérome Perrin's avatar
      credential: follow Person_generatePassword API change · f25ef810
      Jérome Perrin authored
      This script no longer allow to control the number of letters and digit
      f25ef810
    • Jérome Perrin's avatar
      access_token: use os.urandom to generate token · 201a596c
      Jérome Perrin authored
      Using same method as python 3.6's secrets module and a bit longer token
      that what python currently recommends, since we were using very very
      long tokens until now (so that it does not look like a "regression")
      201a596c
    • Jérome Perrin's avatar
      base: generate a stronger passwords in Person_generatePassword · 758fc366
      Jérome Perrin authored
      - use system random
      - generate longer password with a larger space
      
      API change in an incompatible way, it's no longer possible to control
      the number of alpha and numeric. This was reducing a lot the number of
      combinations, so it's better to break so that callers stop generating
      too weak passwords.
      758fc366
  4. 23 Jan, 2020 2 commits
  5. 22 Jan, 2020 2 commits
  6. 20 Jan, 2020 4 commits
  7. 17 Jan, 2020 3 commits
  8. 16 Jan, 2020 2 commits
  9. 15 Jan, 2020 6 commits
  10. 14 Jan, 2020 12 commits