Adding staging driver support

Adding Staging drivers install.

Change-Id: I80e0303a7f5cfe7ae955763090d93d32ccb8c66e
This commit is contained in:
Chris Krelle 2016-12-02 04:58:20 -08:00
parent 86ac35f073
commit 382f21c015
8 changed files with 56 additions and 0 deletions

View File

@ -192,6 +192,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
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
--------------

View File

@ -3,6 +3,7 @@
# which causes the nodes to be wiped after deletion.
cleaning: false
http_boot_folder: /httpboot
staging_drivers_include: false
# Deprecated: nginx_port is no longer used and file_url_port should
# be used instead.
file_url_port: "{{ nginx_port | default('8080') }}"
@ -10,6 +11,7 @@ ironicclient_source_install: false
shade_source_install: true
ironicinspector_source_install: false
ironicinspectorclient_source_install: false
staging_drivers_source_install: false
# Setting to utilize diskimage-builder to create a bootable image.
create_image_via_dib: true
# Setting to install diskimage-builder
@ -72,8 +74,11 @@ ironicclient_git_folder: /opt/stack/python-ironicclient
shade_git_folder: /opt/stack/shade
dib_git_folder: /opt/stack/diskimage-builder
reqs_git_folder: /opt/stack/requirements
staging_drivers_git_folder: /opt/stack/ironic-staging-drivers
ironicinspector_git_folder: /opt/stack/ironic-inspector
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
# 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.

View File

@ -96,3 +96,7 @@
- name: "Install ironic-inspector to permit use of inspection interface"
include: inspector_install.yml
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
ironicinspectorclient_git_url: https://github.com/openstack/python-ironic-inspector-client
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
ironicclient_git_folder: "{{ git_root}}/python-ironicclient"
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"
dib_git_folder: "{{ git_root }}/diskimage-builder"
reqs_git_folder: "{{ git_root }}/requirements"
staging_drivers_git_folder: "{{ git_root }}/ironic-staging-drivers"
# *_git_branch can be overridden for stable branch testing
ironicclient_git_branch: master
ironic_git_branch: master
@ -25,6 +27,7 @@ dib_git_branch: master
ironicinspector_git_branch: master
ironicinspectorclient_git_branch: master
reqs_git_branch: master
staging_drivers_git_branch: master
# Conditional variables utilized based on CI or manual testing options.
copy_from_local_path: false
@ -59,3 +62,7 @@ bifrost_install_sources:
git_url: "{{ reqs_git_url }}"
git_branch: "{{ reqs_git_branch }}"
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"
ironicinspectorclient_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/python-ironic-inspector-client"
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
# folder cloned, while the gate job does not. Likely need to work out a semi-hybrid
# solution.

View File

@ -36,6 +36,7 @@
ironicinspector_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/ironic-inspector"
ironicinspectorclient_git_url: "{{ lookup('env', 'WORKSPACE') }}/openstack/python-ironic-inspector-client"
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
# folder cloned, while the gate job does not. Likely need to work out a semi-hybrid
# 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.