1. 15 Jun, 2018 1 commit
    • Rémi Duraffort's avatar
      Use yaml.safe_load when parsing user data · 583666c8
      Rémi Duraffort authored
      Calling yaml.load() on untrusted data is unsafe and can lead to remote code
      This commit fixes remote code execution in:
      * the submit page
      * the xmlrpc api
      * the scheduler
      * lava-master and lava-slave
      This bug was found by running bandit (https://github.com/PyCQA/bandit).
      Change-Id: I80882f9baeb0e7e1c2127f602cc4b206213cb59f
  2. 16 May, 2018 1 commit
    • Neil Williams's avatar
      Drop Python2 xmlrpc support · 198283ab
      Neil Williams authored
      No need for the check to Python2 or the mapping of a
      Python3 module to a Python2 name.
      Change-Id: I1c2df55c9d68cd2ccf0927a6dcc1c28240a03b0e
  3. 03 Apr, 2018 1 commit
    • Neil Williams's avatar
      Python3 changes needed for lava-server · 8d835d78
      Neil Williams authored
      This moves lava-server to Python3 only. Packaging changes
      are available in the python3 packaging branch.
      Some helpers still need updates for Python3.
      Update ./ci-run to not run Python2 unit tests.
      Update validate_pipeline_devices XMLRPC API call to return
      a valid xmlrpc Binary object using Python3.
      Use Django from Stretch - stretch-backports is also
      Update docs for removal of Python2 support and
      therfore Jessie.
      Change-Id: I60c4d5092aef4555cf01b193bda917f473906dd7
  4. 22 Mar, 2018 1 commit
  5. 21 Feb, 2018 1 commit
    • Rémi Duraffort's avatar
      Remove v1 leftover · fa0855de
      Rémi Duraffort authored
      requested_device_type is always defined (except for dynamic connection).
      Also fix a crash in the API with dynamic connections.
      Change-Id: Id41d60b45a34a9c955deb622f5c450ce2056ac53
  6. 19 Feb, 2018 1 commit
  7. 01 Feb, 2018 1 commit
    • Stevan Radakovic's avatar
      LAVA-1220 - Update API calls and docs for scheduler changes. · bbf6c5bb
      Stevan Radakovic authored
      Add new  XML-RPC api calls like to reflect changes in test job and devices models.
      Update XML-RPC docs like results.make_custom_query to reflect the scheduler changes.
      Update query docs for new conditions with examples.
      Change-Id: I26de511abcfbe05de0e0b53504bbd2aa4e4cf1f4
  8. 17 Jan, 2018 2 commits
    • Rémi Duraffort's avatar
      API: restore legacy behavior · 2928f2c8
      Rémi Duraffort authored
      For some functions, the TestJob status was lower cased and not
      capitalized (like for most other functions).
      Change-Id: Ic90d0ac27d6d13a4afb66125e60b1016e2e3fec6
    • Rémi Duraffort's avatar
      API: fix old behavior for device status · a7e2e59b
      Rémi Duraffort authored
      In the old api, Device status are lower case while TestJob status are
      Change-Id: I8556ca0506061bc0059d0f0b2174fd9d78532932
  9. 08 Jan, 2018 1 commit
  10. 21 Dec, 2017 1 commit
    • Rémi Duraffort's avatar
      Rewrite from scratch the job scheduler · 6114d0f9
      Rémi Duraffort authored
      This patch is made of two parts:
      1/ changing the Device and TestJob state machine
      2/ rewrite of the TestJob scheduler
      Tests for the scheduler and the state machine are still missing.
      Change-Id: I80f55c0ba89f978875ab079d2bf595a3c963017b
  11. 07 Dec, 2017 1 commit
  12. 16 Nov, 2017 1 commit
  13. 02 Nov, 2017 1 commit
  14. 27 Oct, 2017 1 commit
  15. 25 Oct, 2017 2 commits
  16. 19 Oct, 2017 1 commit
    • Stevan Radakovic's avatar
      LAVA-876 - Remove access to Dashboard · 103a44be
      Stevan Radakovic authored
      Remove all entries from urls.py in dashboard_app.
      Remove some of the obsolete tests.
      Remove some of the code so that rest of the server works ok.
      Change-Id: I74f79f5ce02c4af00416e57299cbe2782fad7ddb
  17. 11 Sep, 2017 1 commit
  18. 17 Jul, 2017 1 commit
  19. 29 Jun, 2017 1 commit
  20. 28 Jun, 2017 1 commit
  21. 08 Jun, 2017 2 commits
  22. 23 May, 2017 1 commit
    • Guillaume Tucker's avatar
      Fix typo which causes XML-RPC error when saving device dict · e23bb176
      Guillaume Tucker authored
      Fix "raise xmlrpclib.Fault(..." in lava_scheduler_app/api.py.  The
      error seen was:
        <Fault -32603: "Internal Server Error (contact server administrator for details): 'module' object has no attribute 'Faul'">
      This code is only run when the device dictionary fails to be saved on
      the disk, for example due to a permission error if /etc/ is owned by
      root but the server is running as lavaserver.
      Fixes: ae4d4776
      Change-Id: Ic5c480bf610b9e87cdb74502fcd6972c496400aa
      Signed-off-by: Guillaume Tucker's avatarGuillaume Tucker <guillaume.tucker@collabora.com>
  23. 17 May, 2017 1 commit
    • Neil Williams's avatar
      Expand zmq_client to handle publisher socket · 12c0508b
      Neil Williams authored
      Use the hostname and XML-RPC to lookup the publisher socket
      as the string is not readily visible on most instances.
      Drop authentication requirement for publisher socket as it
      is a copy of a read-only value.
      Change-Id: Iad8423e2472196ace62712598e3c13d60ac82d75
  24. 15 May, 2017 1 commit
  25. 02 May, 2017 1 commit
  26. 27 Apr, 2017 1 commit
    • Florent Jacquet's avatar
      api: add get_recent_jobs_for_device · a04086dd
      Florent Jacquet authored
      This API function returns the last jobs asked for a given device as a list of
      dictionaries containing the job ID, its description (the name), and its status.
      The typical use case is to build a custom reporting tool outside LAVA by
      querying this function, and then asking for job details once you know which job
      to look for.
      Change-Id: I2acd5415ed6ff90d2f64e40d520d79d09c2f4cf3
      Signed-off-by: default avatarFlorent Jacquet <florent.jacquet@free-electrons.com>
  27. 18 Apr, 2017 1 commit
  28. 14 Feb, 2017 1 commit
    • Rémi Duraffort's avatar
      Generate less database queries · ace40b01
      Rémi Duraffort authored
      In fact, num_devices_visible_to is too complex and generates many queryes for
      most use cases.
      Change-Id: I5dd47e0437af5e80cbb7d931ddc72e507ef6d19b
  29. 24 Jan, 2017 1 commit
  30. 10 Jan, 2017 1 commit
  31. 07 Dec, 2016 1 commit
  32. 01 Dec, 2016 1 commit
  33. 24 Nov, 2016 1 commit
    • Neil Williams's avatar
      LAVA-798 - lookup device-types by alias · dd58a118
      Neil Williams authored
      Allow admins to configure aliases for device-types and provide an API
      to lookup the device-type name by the alias (or a string contained
      within the alias name).
      Add documentation of how this can be used to relate device tree
      names to device-type names whilst keeping device-type names which
      are easily understood by humans. Device types can have any number
      of aliases and some aliases can relate to multiple device types.
      Change-Id: I1b2e877acb810addf82c4cafbc214b889a5cd110
  34. 21 Nov, 2016 1 commit
    • Stevan Radakovic's avatar
      all_devices() api call to do one big query instead of many small ones. · 3e8dbfec
      Stevan Radakovic authored
      device.is_visible_to was called for all devices which generated
      approx. num_of_devices * num_of_devices_of_specific_device_type
      queries before filtering out the RETIRED devices.
      Currently on production that's approx. 100,000 queries per
      all_devices api call.
      This patch also reduces the number of queries to the device_type
      and test_job table for each device.
      Change-Id: I9e1b54a088ae6173f337a0e4690484d952d57df7
  35. 08 Nov, 2016 1 commit
  36. 15 Sep, 2016 1 commit
  37. 02 Sep, 2016 1 commit