Update to Redfish 1.0.0 (official)
- Update Redfish spec and schema to version 1.0.0 - Update Redfish simulator to version 0.99.0a - Comply with Redfish 1.0.0 by changing remaining refs from /rest/v1 to /redfish/v1 - Adds a README to explain how to use the Docker container to launch the DMTF Redfish mockup in order to test without hardware - Update spec file for local usage
This commit is contained in:
parent
f3bf31d83f
commit
56c9f0a910
@ -9,9 +9,9 @@ NOTE::
|
||||
|
||||
DRAFT - WORK IN PROGRESS
|
||||
|
||||
The current Redfish specification revision is 0.96.0a - anything and everything
|
||||
in this library is subject to change until the DMTF ratifies the Redfish API
|
||||
standard v1.0.
|
||||
The current Redfish specification revision is 1.0.0 - Note that the mockup
|
||||
is still at version 0.99.0a and may not reflect what the standard provides
|
||||
fully
|
||||
|
||||
|
||||
Project Structure
|
||||
@ -35,7 +35,7 @@ To use the enclosed examples, you will need Python 2.7
|
||||
(https://www.python.org/downloads/). Note that Python 2.7.9 enforces greater
|
||||
SSL verification requiring server certificates be installed. Parameters to
|
||||
relax the requirements are available in the library, but these configurations
|
||||
are discouraged due to sec
|
||||
are discouraged due to security.
|
||||
|
||||
Python requirements are listed in requirements.txt; additional requirements for
|
||||
running the unit test suite are listed in test-requirements.txt.
|
||||
|
Binary file not shown.
BIN
dmtf/DSP0266_1.0.0.pdf
Normal file
BIN
dmtf/DSP0266_1.0.0.pdf
Normal file
Binary file not shown.
Binary file not shown.
BIN
dmtf/DSP2043_0.99.0a.zip
Normal file
BIN
dmtf/DSP2043_0.99.0a.zip
Normal file
Binary file not shown.
Binary file not shown.
BIN
dmtf/DSP8010_1.0.0.zip
Normal file
BIN
dmtf/DSP8010_1.0.0.zip
Normal file
Binary file not shown.
@ -8,6 +8,6 @@ RUN apt-get update
|
||||
RUN apt-get -y install apache2 unzip sed
|
||||
EXPOSE 80
|
||||
COPY redfish-setup.sh /tmp/redfish-setup.sh
|
||||
COPY DSP2043_0.96.0a.zip /tmp/DSP2043_0.96.0a.zip
|
||||
COPY DSP2043_0.99.0a.zip /tmp/DSP2043_0.99.0a.zip
|
||||
RUN chmod 755 /tmp/redfish-setup.sh
|
||||
CMD /tmp/redfish-setup.sh
|
||||
|
30
dmtf/README.rst
Normal file
30
dmtf/README.rst
Normal file
@ -0,0 +1,30 @@
|
||||
DMTF Redfish specification
|
||||
--------------------------
|
||||
|
||||
This directory contains the current references from the DMTF on the Redfish
|
||||
specification (1.0.0 at the time of the writing)
|
||||
|
||||
In order to ease test, the DMTF has published a mockup environment to simulate
|
||||
a Redfish based system so it is possible to write programs without real Redfish
|
||||
compliant hardware platform.
|
||||
|
||||
Docker container
|
||||
----------------
|
||||
|
||||
In order to help testing python-redfish, this directory provides a script which
|
||||
you should be able to run on your system (providing you have docker support and
|
||||
a docker registry) which will create a docker container running the DMTF Redfish
|
||||
mockup on the port 8000.
|
||||
|
||||
To build your container, just issue: ./buildImage.sh
|
||||
To launch it, just issue: ./run-redfish-simulator.sh
|
||||
To use it, just issue: firefox http://localhost:8000/redfish/v1
|
||||
|
||||
Systems entry point:
|
||||
http://localhost:8000/redfish/v1/Systems
|
||||
|
||||
Chassis entry point:
|
||||
http://localhost:8000/redfish/v1/Chassis
|
||||
|
||||
Managers entry point:
|
||||
http://localhost:8000/redfish/v1/Managers
|
@ -1,5 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Build and tag images
|
||||
docker rmi redfish-simulator
|
||||
docker build -t "redfish-simulator" .
|
||||
docker tag redfish-simulator:latest localhost:5000/redfish-simulator
|
||||
docker tag -f redfish-simulator:latest localhost:5000/redfish-simulator
|
||||
|
@ -16,10 +16,11 @@ trap stop_apache HUP INT QUIT KILL TERM
|
||||
|
||||
# Main
|
||||
cd /var/www/html
|
||||
unzip -q -o /tmp/DSP2043_0.96.0a.zip
|
||||
mkdir -p redfish
|
||||
unzip -q -o /tmp/DSP2043_0.99.0a.zip
|
||||
chmod 755 DSP2043_0.99.0a
|
||||
ln -sf DSP2043_0.99.0a redfish
|
||||
cd redfish
|
||||
ln -sf .. v1
|
||||
ln -sf . v1
|
||||
cd ..
|
||||
ip a
|
||||
#sed -i -e 's/Listen 80/Listen 8000/' /etc/apache2/ports.conf
|
||||
|
@ -1,4 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Build the docker container first
|
||||
docker build -t localhost:5000/redfish-simulator:latest .
|
||||
# Th -p option needs to be after the run command. No warning is given if before but doesn't work
|
||||
docker run -d -p 8000:80 --name "redfish-simulator" localhost:5000/redfish-simulator
|
||||
docker rm "redfish-simulator"
|
||||
docker run -d -p 8000:80 --name "redfish-simulator" localhost:5000/redfish-simulator:latest
|
||||
echo "Launch your browser and load http://localhost:8000/redfish/v1"
|
||||
|
@ -7,7 +7,7 @@ Summary: Redfish python library
|
||||
|
||||
Group: Development/Python
|
||||
License: Apache v2.0
|
||||
URL: https://github.com/devananda/python-redfish
|
||||
URL: https://github.com/devananda/%{name}
|
||||
Source0: %name-%version.tar.gz
|
||||
|
||||
BuildArch: noarch
|
||||
@ -29,6 +29,8 @@ system such as defined by http://www.redfishcertification.org
|
||||
%{__python} setup.py install -O1 --skip-build --root %{buildroot}
|
||||
|
||||
%files
|
||||
%doc README.rst examples/*.py
|
||||
%dir %{python_sitelib}/redfish
|
||||
%{python_sitelib}/redfish/*
|
||||
%{python_sitelib}/redfish/*.py*
|
||||
%{python_sitelib}/redfish/tests/*.py*
|
||||
%{python_sitelib}/python_redfish*
|
||||
|
@ -33,10 +33,10 @@ class RedfishOperation(connection.RedfishConnection):
|
||||
memberuri = system['links']['Member'][0]['href']
|
||||
# verify expected type
|
||||
# hint: don't limit to version 0 here as we will rev to 1.0 at some point hopefully with minimal changes
|
||||
# assert(connection.get_type(system) == 'ComputerSystem.0' or connection.get_type(system) == 'ComputerSystem.1')
|
||||
# assert(connection.get_type(system) == 'ComputerSystem.0' or connection.get_type(system) == 'ComputerSystem.1')
|
||||
|
||||
# verify it supports POST
|
||||
# assert(connection.operation_allowed(headers, 'POST'))
|
||||
# assert(connection.operation_allowed(headers, 'POST'))
|
||||
|
||||
action = dict()
|
||||
action['Action'] = 'Reset'
|
||||
|
Loading…
Reference in New Issue
Block a user