[release-announce] sushy-tools 0.7.0

no-reply at openstack.org no-reply at openstack.org
Thu Sep 12 09:41:52 UTC 2019


We enthusiastically announce the release of:

sushy-tools 0.7.0: A set of tools to support the development and test
of the Sushy library (https://docs.openstack.org/sushy/)

The source is available from:

    https://opendev.org/openstack/sushy-tools

Download the package from:

    https://tarballs.openstack.org/sushy-tools/

For more details, please see below.

0.7.0
^^^^^


New Features
************

* Adds Chassis resource emulation to dynamic Redfish emulator. All
  emulated Computer Systems and Managers get linked up to the first of
  the configured Chassis (just one by default).

* Adds Drive resource support to the dynamic Redfish emulator based
  on static user configuration.

* Adds generic Indicator LED resource emulation based on static user
  configuration. Adds "IndicatorLED" property to Chassis and System
  resources.

* Adds Managers resource emulation to dynamic Redfish emulator.
  Emulated Computer Systems link up automatically to the first of the
  configured Managers (just one by default).

* Adds emulation support for Simple Storage resource to libvirt
  virtualization backend of the dynamic Redfish emulator. The
  emulation functionality assumes that the storage devices attached to
  a VM are configured as a libvirt Volume via a storage pool. Devices
  not configured as a Volume will not be considered for emulation
  purposes.

* Adds Storage and Storage Controllers resource support to the
  dynamic Redfish emulator based on static user configuration.

* Adds basic "Thermal" resource emulation under Chassis resource.
  The "Thermal" resource is not user-configurable, its contents is
  mostly static and depends on Jinja2 template. All references between
  resources are dynamically rendered though.

* Adds Virtual Media resource.

  As of this release, user can configure a collection of virtual media
  devices including their types, names and other properies. By
  default, "cdrom" and "floppy" devices are configured.

  Each Manager automatically gets its own instance of the above
  mentioned virtual media device collection. HTTP/S-hosted images can
  be inserted into and ejected from virtual media devices.

  If libvirt virtualization backend is being used, once ISO image is
  inserted into the respective Manager, any System under that Manager
  can boot from that image by booting from its local "cdrom" over
  UEFI.

  The ISO images must be UEFI-bootable or hybrid.

* Adds Volume resource emulation support.

  As of this release, a user can configure a collection of Volumes
  including the VolumeType and Capacity. The configured volumes will
  appear as libvirt volumes in the libvirt virtualization backend of
  the dynamic Redfish emulator (provided the libvirt pool specified
  for the volume exists).

  Volume creation via POST request is also supported.

  In case the Openstack backend is used, the NotSupportedError is
  raised.


Bug Fixes
*********

* Fixes Flask config file load as pointed by the
  "SUSHY_EMULATOR_CONFIG" environment variable when running under WSGI
  server. Before this fix, the above mentioned environment variable
  was ignored and user config file not loaded.

Changes in sushy-tools 0.6.0..0.7.0
-----------------------------------

794ca7f Store virtual media device changes persistently
9210bf3 Remove obsolete limitation from the doc
fa70fbc Add Volume resource support
0812b1e Build pdf doc
f188311 Add Drive resource support
5491098 Add Storage and Storage Controllers resource support
7460b15 Fix non-functional driver configuration on Py2
a0e3057 Do not reuse sqlite connection
43f3347 Add missing six and requests requirements
11c7511 Fix TypeError for Indicators resource
857a02c Follow-up fixes
69cfa3a Add Simple Storage resource support
578f058 Add Thermal resource emulation
9e0eaf4 Add `get/set_boot_image` to libvirt driver
e1c844d Add Virtual Media support
155fed1 Add Indicator LED resource emulation
b4cba95 Add state sharing and persistence mechanism
248e3d1 Add Chassis resource support
f1ae236 Add Managers resource support
e034afc add local bindep.txt
157b396 Simplify resource initialization
c0cd954 Update Python 3 test runtimes for Train
f206d8c Rename `drivers` to `resources/systems`
255e376 Add contributor docs on running sushy-tools locally
1edffef Adds `Name` field to `System` resource response


Diffstat (except docs and test files)
-------------------------------------

bindep.txt                                         |   2 +
lower-constraints.txt                              |   2 +-
.../add-chassis-resource-aab57e319e6c7088.yaml     |   6 +
.../notes/add-drive-resource-a827e136600071f3.yaml |   5 +
...dd-indicator-led-resource-672255319e6c3421.yaml |   6 +
.../add-managers-resource-ffa58e329eccc058.yaml    |   6 +
...d-simple-storage-resource-200e78d78c6aa8df.yaml |   8 +
.../add-storage-resource-52bf30f50dd7b0a1.yaml     |   5 +
.../add-thermal-resource-8623543795643123.yaml     |   7 +
.../notes/add-virtual-media-4a137a5fb5017031.yaml  |  19 +
.../add-volume-resource-db795af928e41e5c.yaml      |  13 +
.../notes/fix-wsgi-config-e3f63f91152225f8.yaml    |   7 +
requirements.txt                                   |   2 +
setup.cfg                                          |   3 +-
sushy_tools/emulator/base.py                       |  37 ++
sushy_tools/emulator/constants.py                  |  20 +
sushy_tools/emulator/drivers/memoize.py            |  56 --
sushy_tools/emulator/main.py                       | 710 +++++++++++++++++----
sushy_tools/emulator/memoize.py                    | 175 +++++
.../emulator/{drivers => resources}/__init__.py    |   0
sushy_tools/emulator/resources/base.py             |  38 ++
sushy_tools/emulator/resources/chassis/__init__.py |   0
sushy_tools/emulator/resources/chassis/base.py     |  69 ++
.../emulator/resources/chassis/staticdriver.py     | 122 ++++
sushy_tools/emulator/resources/drives/__init__.py  |   0
.../emulator/resources/drives/staticdriver.py      |  64 ++
.../emulator/resources/indicators/__init__.py      |   0
.../emulator/resources/indicators/staticdriver.py  |  87 +++
.../emulator/resources/managers/__init__.py        |   0
sushy_tools/emulator/resources/managers/base.py    |  69 ++
.../emulator/resources/managers/staticdriver.py    | 126 ++++
sushy_tools/emulator/resources/storage/__init__.py |   0
.../emulator/resources/storage/staticdriver.py     |  64 ++
sushy_tools/emulator/resources/systems/__init__.py |   0
.../{drivers => resources/systems}/base.py         |  66 +-
.../systems}/libvirtdriver.py                      | 404 +++++++++++-
.../{drivers => resources/systems}/novadriver.py   |  46 +-
sushy_tools/emulator/resources/vmedia/__init__.py  |   0
.../emulator/resources/vmedia/staticdriver.py      | 229 +++++++
sushy_tools/emulator/resources/volumes/__init__.py |   0
.../emulator/resources/volumes/staticdriver.py     |  81 +++
sushy_tools/emulator/templates/chassis.json        | 101 +++
.../emulator/templates/chassis_collection.json     |  15 +
sushy_tools/emulator/templates/drive.json          |  30 +
sushy_tools/emulator/templates/manager.json        |  40 ++
.../emulator/templates/manager_collection.json     |  16 +
sushy_tools/emulator/templates/root.json           |   3 +
sushy_tools/emulator/templates/simple_storage.json |  21 +
.../templates/simple_storage_collection.json       |  16 +
sushy_tools/emulator/templates/storage.json        |  52 ++
.../emulator/templates/storage_collection.json     |  16 +
sushy_tools/emulator/templates/system.json         |  16 +
sushy_tools/emulator/templates/thermal.json        | 126 ++++
sushy_tools/emulator/templates/virtual_media.json  |  27 +
.../templates/virtual_media_collection.json        |  16 +
sushy_tools/emulator/templates/volume.json         |  16 +
.../emulator/templates/volume_collection.json      |  15 +
sushy_tools/error.py                               |   4 +
.../unit/emulator/resources/chassis/__init__.py    |   0
.../unit/emulator/resources/chassis/test_static.py |  98 +++
.../unit/emulator/resources/drives/__init__.py     |   0
.../unit/emulator/resources/drives/test_static.py  |  55 ++
.../unit/emulator/resources/indicators/__init__.py |   0
.../emulator/resources/indicators/test_static.py   |  57 ++
.../unit/emulator/resources/managers/__init__.py   |   0
.../emulator/resources/managers/test_static.py     |  75 +++
.../unit/emulator/resources/storage/__init__.py    |   0
.../unit/emulator/resources/storage/test_static.py |  50 ++
.../unit/emulator/resources/systems/__init__.py    |   0
.../{ => resources/systems}/test_libvirt.py        | 150 ++++-
.../emulator/{ => resources/systems}/test_nova.py  |   7 +-
.../unit/emulator/resources/vmedia/__init__.py     |   0
.../unit/emulator/resources/vmedia/test_static.py  | 136 ++++
.../unit/emulator/resources/volumes/__init__.py    |   0
.../unit/emulator/resources/volumes/test_static.py |  86 +++
test-requirements.txt                              |   2 +-
tox.ini                                            |   6 +
zuul.d/project.yaml                                |   3 +-
87 files changed, 5180 insertions(+), 289 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index adfca57..aabb3fe 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -6,0 +7,2 @@ Flask>=1.0.2 # BSD
+requests>=2.14.2 # Apache-2.0
+six>=1.10.0 # MIT
diff --git a/test-requirements.txt b/test-requirements.txt
index 9b58b41..89cb481 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -13 +13 @@ sphinx!=1.6.6,!=1.6.7,>=1.6.2;python_version>='3.4' # BSD
-openstackdocstheme>=1.18.1 # Apache-2.0
+openstackdocstheme>=1.20.0 # Apache-2.0






More information about the Release-announce mailing list