Add delete role for dynamic inventory testing

Change-Id: I6970f491e71e29b7bc957e98287a4b114fb47383
This commit is contained in:
Julia Kreger 2015-06-19 15:08:53 -04:00
parent 5bd90bab01
commit 1774d3ce78
6 changed files with 211 additions and 0 deletions

View File

@ -0,0 +1,64 @@
ironic-delete-dynamic
=====================
Removes nodes from Ironic utilizing the os_ironic Ansible module that is
installed by Bifrost.
Requirements
------------
This role removes a node from ironic utilizing a uuid variable, which
should be defined at the host level.
Role Variables
--------------
uuid: The UUID value representing the ironic host you wish to delete.
ironic_url: This is the url for the ironic server to connect to. It is
presently defaulted to "http://localhost:6385/".
nics: A list of dictonary key-value pairs in the format of a key value
of 'mac' and the value of the mac address for the node.
Example::
[{'mac':'01:02:03:04:05:06'},{'mac':'01:02:03:04:05:07'}]
Dependencies
------------
This role has no direct role dependencies although is expected to be
executed as part of Bifrost's test sequence.
Example Playbook
----------------
- hosts: baremetal
connection: local
name: "Delete the node"
sudo: no
gather_facts: no
roles:
- role: ironic-delete-dynamic
License
-------
Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
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.
Author Information
------------------
Ironic Developers

View File

@ -0,0 +1,2 @@
---
ironic_url: "http://localhost:6385/"

View File

@ -0,0 +1,2 @@
---
# handlers file for ironic-delete-dynamic

View File

@ -0,0 +1,116 @@
---
galaxy_info:
author: Ironic Developers
description: Removes enrolled nodes from Ironic
company: OpenStack
license: Apache
min_ansible_version: 1.9
#
# Below are all platforms currently available. Just uncomment
# the ones that apply to your role. If you don't see your
# platform on this list, let us know and we'll get it added!
#
platforms:
#- name: EL
# versions:
# - all
# - 5
# - 6
# - 7
#- name: GenericUNIX
# versions:
# - all
# - any
#- name: Fedora
# versions:
# - all
# - 16
# - 17
# - 18
# - 19
# - 20
#- name: SmartOS
# versions:
# - all
# - any
#- name: opensuse
# versions:
# - all
# - 12.1
# - 12.2
# - 12.3
# - 13.1
# - 13.2
#- name: Amazon
# versions:
# - all
# - 2013.03
# - 2013.09
#- name: GenericBSD
# versions:
# - all
# - any
#- name: FreeBSD
# versions:
# - all
# - 8.0
# - 8.1
# - 8.2
# - 8.3
# - 8.4
# - 9.0
# - 9.1
# - 9.1
# - 9.2
#- name: Ubuntu
# versions:
# - all
# - lucid
# - maverick
# - natty
# - oneiric
# - precise
# - quantal
# - raring
# - saucy
- trusty
#- name: SLES
# versions:
# - all
# - 10SP3
# - 10SP4
# - 11
# - 11SP1
# - 11SP2
# - 11SP3
#- name: GenericLinux
# versions:
# - all
# - any
#- name: Debian
# versions:
# - all
# - etch
# - lenny
# - squeeze
# - wheezy
#
# Below are all categories currently available. Just as with
# the platforms above, uncomment those that apply to your role.
#
categories:
- cloud
- cloud:openstack
#- cloud:gce
#- cloud:rax
#- clustering
#- database
#- database:nosql
#- database:sql
#- development
#- monitoring
#- networking
#- packaging
#- system
#- web
dependencies: []

View File

@ -0,0 +1,25 @@
# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
#
# 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: "Delete Hardware"
os_ironic:
auth_type: None
auth: None
ironic_url: "{{ ironic_url }}"
driver: ""
uuid: "{{ uuid }}"
state: absent
nics: "{{ nics }}"
driver_info: "{}"
delegate_to: localhost

View File

@ -0,0 +1,2 @@
---
# vars file for ironic-delete-dynamic