Merge "Adding staging driver support"

This commit is contained in:
Jenkins 2016-12-14 08:43:24 +00:00 committed by Gerrit Code Review
commit 073646760d
8 changed files with 56 additions and 0 deletions

View File

@ -197,6 +197,13 @@ After you have performed an installation, you can edit /etc/ironic/ironic.conf
to enable or disable cleaning as desired, however it is highly encouraged to to enable or disable cleaning as desired, however it is highly encouraged to
utilize cleaning in any production environment. utilize cleaning in any production environment.
The ironic community maintains a repository additional of drivers outside ironic.
These drivers and information about them can be found `here <http://git.openstack.org/cgit/openstack/ironic-staging-drivers/>`_.
If you would like to install the ironic staging drivers, simply pass
``-e staging_drivers_include=true`` when executing the install playbook::
ansible-playbook -K -vvvv -i inventory/localhost install.yaml -e staging_drivers_include=true
Manual CLI use Manual CLI use
-------------- --------------

View File

@ -3,6 +3,7 @@
# which causes the nodes to be wiped after deletion. # which causes the nodes to be wiped after deletion.
cleaning: false cleaning: false
http_boot_folder: /httpboot http_boot_folder: /httpboot
staging_drivers_include: false
# Deprecated: nginx_port is no longer used and file_url_port should # Deprecated: nginx_port is no longer used and file_url_port should
# be used instead. # be used instead.
file_url_port: "{{ nginx_port | default('8080') }}" file_url_port: "{{ nginx_port | default('8080') }}"
@ -10,6 +11,7 @@ ironicclient_source_install: false
shade_source_install: true shade_source_install: true
ironicinspector_source_install: false ironicinspector_source_install: false
ironicinspectorclient_source_install: false ironicinspectorclient_source_install: false
staging_drivers_source_install: false
# Setting to utilize diskimage-builder to create a bootable image. # Setting to utilize diskimage-builder to create a bootable image.
create_image_via_dib: true create_image_via_dib: true
# Setting to install diskimage-builder # Setting to install diskimage-builder
@ -72,8 +74,11 @@ ironicclient_git_folder: /opt/stack/python-ironicclient
shade_git_folder: /opt/stack/shade shade_git_folder: /opt/stack/shade
dib_git_folder: /opt/stack/diskimage-builder dib_git_folder: /opt/stack/diskimage-builder
reqs_git_folder: /opt/stack/requirements reqs_git_folder: /opt/stack/requirements
staging_drivers_git_folder: /opt/stack/ironic-staging-drivers
ironicinspector_git_folder: /opt/stack/ironic-inspector ironicinspector_git_folder: /opt/stack/ironic-inspector
ironicinspectorclient_git_folder: /opt/stack/python-ironic-inspector-client ironicinspectorclient_git_folder: /opt/stack/python-ironic-inspector-client
staging_drivers_git_url: http://git.openstack.org/cgit/openstack/ironic-staging-drivers
# Comma-separated list, in the format of a string, of drivers that are enabled # Comma-separated list, in the format of a string, of drivers that are enabled
# by default. This is intended to be a list of agent based drivers. # by default. This is intended to be a list of agent based drivers.
# PXE drivers can be found in the setting pxe_drivers that can be found below. # PXE drivers can be found in the setting pxe_drivers that can be found below.

View File

@ -96,3 +96,7 @@
- name: "Install ironic-inspector to permit use of inspection interface" - name: "Install ironic-inspector to permit use of inspection interface"
include: inspector_install.yml include: inspector_install.yml
when: enable_inspector | bool == true when: enable_inspector | bool == true
- name: "Install ironic-staging-drivers"
include: staging_install.yml
when: staging_drivers_include | bool == true

View File

@ -0,0 +1,22 @@
# Copyright (c) 2016 Mirantis Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
---
- name: "Ironic-staging-drivers - PIP Install"
include: pip_install.yml
package=ironic-staging-drivers
state=latest
sourcedir={{ staging_drivers_git_folder }}
source_install={{ staging_drivers_source_install }}

View File

@ -9,6 +9,7 @@ ironic_git_url: https://git.openstack.org/openstack/ironic
ironicinspector_git_url: https://github.com/openstack/ironic-inspector ironicinspector_git_url: https://github.com/openstack/ironic-inspector
ironicinspectorclient_git_url: https://github.com/openstack/python-ironic-inspector-client ironicinspectorclient_git_url: https://github.com/openstack/python-ironic-inspector-client
reqs_git_url: https://git.openstack.org/openstack/requirements reqs_git_url: https://git.openstack.org/openstack/requirements
staging_drivers_git_url: https://git.openstack.org/openstack/ironic-staging-drivers
# *_git_folder can be overridden by local clones for offline installs # *_git_folder can be overridden by local clones for offline installs
ironicclient_git_folder: "{{ git_root}}/python-ironicclient" ironicclient_git_folder: "{{ git_root}}/python-ironicclient"
ironic_git_folder: "{{ git_root}}/ironic" ironic_git_folder: "{{ git_root}}/ironic"
@ -17,6 +18,7 @@ ironicinspectorclient_git_folder: "{{ git_root}}/python-ironic-inspector-client"
shade_git_folder: "{{ git_root}}/shade" shade_git_folder: "{{ git_root}}/shade"
dib_git_folder: "{{ git_root }}/diskimage-builder" dib_git_folder: "{{ git_root }}/diskimage-builder"
reqs_git_folder: "{{ git_root }}/requirements" reqs_git_folder: "{{ git_root }}/requirements"
staging_drivers_git_folder: "{{ git_root }}/ironic-staging-drivers"
# *_git_branch can be overridden for stable branch testing # *_git_branch can be overridden for stable branch testing
ironicclient_git_branch: master ironicclient_git_branch: master
ironic_git_branch: master ironic_git_branch: master
@ -25,6 +27,7 @@ dib_git_branch: master
ironicinspector_git_branch: master ironicinspector_git_branch: master
ironicinspectorclient_git_branch: master ironicinspectorclient_git_branch: master
reqs_git_branch: master reqs_git_branch: master
staging_drivers_git_branch: master
# Conditional variables utilized based on CI or manual testing options. # Conditional variables utilized based on CI or manual testing options.
copy_from_local_path: false copy_from_local_path: false
@ -59,3 +62,7 @@ bifrost_install_sources:
git_url: "{{ reqs_git_url }}" git_url: "{{ reqs_git_url }}"
git_branch: "{{ reqs_git_branch }}" git_branch: "{{ reqs_git_branch }}"
name: requirements name: requirements
- git_folder: "{{ staging_drivers_git_folder }}"
git_url: "{{ staging_drivers_git_url }}"
git_branch: "{{ staging_drivers_git_branch }}"
name: ironic-staging-drivers

View File

@ -24,6 +24,7 @@
ironicinspector_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/ironic-inspector" ironicinspector_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/ironic-inspector"
ironicinspectorclient_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/python-ironic-inspector-client" ironicinspectorclient_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/python-ironic-inspector-client"
reqs_git_url: "/opt/git/openstack/requirements" reqs_git_url: "/opt/git/openstack/requirements"
staging_drivers_git_url: "/opt/git/openstack/ironic-staging-drivers"
# TODO(TheJulia) Fix the above paths to be consistent, because the NV job gets the dib # TODO(TheJulia) Fix the above paths to be consistent, because the NV job gets the dib
# folder cloned, while the gate job does not. Likely need to work out a semi-hybrid # folder cloned, while the gate job does not. Likely need to work out a semi-hybrid
# solution. # solution.

View File

@ -36,6 +36,7 @@
ironicinspector_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/ironic-inspector" ironicinspector_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/ironic-inspector"
ironicinspectorclient_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/python-ironic-inspector-client" ironicinspectorclient_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/python-ironic-inspector-client"
reqs_git_url: "/opt/git/openstack/requirements" reqs_git_url: "/opt/git/openstack/requirements"
staging_drivers_git_url: "/opt/git/openstack/ironic-staging-drivers"
# TODO(TheJulia) Fix the above paths to be consistent, because the NV job gets the dib # TODO(TheJulia) Fix the above paths to be consistent, because the NV job gets the dib
# folder cloned, while the gate job does not. Likely need to work out a semi-hybrid # folder cloned, while the gate job does not. Likely need to work out a semi-hybrid
# solution. # solution.

View File

@ -0,0 +1,9 @@
---
features:
- Ironic-Staging-Drivers can now be installed. These are
drivers that are not included in the ironic repo, and
provide additional hardware support for ironic. More
information about the drivers can be found at
`Ironic-Staging-Drivers <http://git.openstack.org/cgit/openstack/ironic-staging-drivers>`_
To install the staging drivers set `staging_drivers_include`
to true. The default value is false.