summaryrefslogtreecommitdiffstats
path: root/bifrost
diff options
context:
space:
mode:
Diffstat (limited to 'bifrost')
-rw-r--r--bifrost/playbooks/opnfv-virtual.yaml42
-rwxr-xr-xbifrost/scripts/bifrost-provision.sh20
-rwxr-xr-xbifrost/scripts/destroy-env.sh6
3 files changed, 35 insertions, 33 deletions
diff --git a/bifrost/playbooks/opnfv-virtual.yaml b/bifrost/playbooks/opnfv-virtual.yaml
index 2ebf86f8..f44adb4d 100644
--- a/bifrost/playbooks/opnfv-virtual.yaml
+++ b/bifrost/playbooks/opnfv-virtual.yaml
@@ -9,18 +9,12 @@
---
- hosts: localhost
connection: local
- name: "Setting pre-test conditions"
+ name: "Host and Ironic bootstrapping"
become: yes
- ignore_errors: yes
- tasks:
- - name: Remove pre-existing leases file
- file: path=/var/lib/misc/dnsmasq.leases state=absent
-- hosts: localhost
- connection: local
- name: "Executes install, enrollment, and testing in one playbook"
- become: no
gather_facts: yes
pre_tasks:
+ - name: Remove pre-existing leases file
+ file: path=/var/lib/misc/dnsmasq.leases state=absent
- name: "Override the ipv4_gateway setting"
set_fact:
ipv4_gateway: "192.168.122.1"
@@ -30,14 +24,12 @@
file:
path: /httpboot
state: directory
- become: yes
- name: Download the {{ xci_distro }} image checksum file
get_url:
dest: /httpboot/deployment_image.qcow2.sha256.txt
force: no
url: http://artifacts.opnfv.org/releng/xci/images/{{ xci_distro }}.qcow2.sha256.txt
timeout: 3000
- become: yes
- name: Extract checksum
shell: awk '{print $1}' /httpboot/deployment_image.qcow2.sha256.txt
register: _image_checksum
@@ -53,27 +45,17 @@
timeout: 3000
dest: /httpboot/deployment_image.qcow2
force: no
- become: yes
- name: Set correct mode for {{ xci_distro }}.qcow2 file
file:
path: /httpboot/deployment_image.qcow2
mode: '0755'
owner: 'root'
group: 'root'
- become: yes
when: use_prebuilt_images | bool == true
roles:
- - { role: bifrost-prep-for-install, when: skip_install is not defined }
- environment:
- http_proxy: "{{ lookup('env','http_proxy') }}"
- https_proxy: "{{ lookup('env','https_proxy') }}"
-- hosts: localhost
- connection: local
- name: "Executes install, enrollment, and testing in one playbook"
- become: yes
- gather_facts: yes
- roles:
+ - role: bifrost-prep-for-install
+ when: skip_install is not defined
- role: bifrost-keystone-install
- role: bifrost-ironic-install
cleaning: false
@@ -118,22 +100,20 @@
environment:
http_proxy: "{{ lookup('env','http_proxy') }}"
https_proxy: "{{ lookup('env','https_proxy') }}"
+
- hosts: baremetal
- name: "Enroll node with Ironic"
- become: no
- connection: local
- roles:
- - role: ironic-enroll-dynamic
- - { role: ironic-inspect-node, when: inspect_nodes | default('false') | bool == true }
-- hosts: baremetal
- name: "Create configuration drive files and deploy machines"
+ name: "Enrollment and Deployment"
vars:
multinode_testing: "{{ inventory_dhcp | bool == true }}"
become: no
connection: local
+ gather_facts: yes
roles:
+ - role: ironic-enroll-dynamic
+ - { role: ironic-inspect-node, when: inspect_nodes | default('false') | bool == true }
- role: bifrost-configdrives-dynamic
- role: bifrost-deploy-nodes-dynamic
+
- hosts: baremetal
name: "Deploy machines."
become: no
diff --git a/bifrost/scripts/bifrost-provision.sh b/bifrost/scripts/bifrost-provision.sh
index dccb3231..726a4da4 100755
--- a/bifrost/scripts/bifrost-provision.sh
+++ b/bifrost/scripts/bifrost-provision.sh
@@ -77,6 +77,26 @@ export DIB_OS_PACKAGES=${DIB_OS_PACKAGES:-"vlan,vim,less,bridge-utils,language-p
# Additional dib elements
export EXTRA_DIB_ELEMENTS=${EXTRA_DIB_ELEMENTS:-"openssh-server"}
+# dib configuration
+case ${XCI_DISTRO,,} in
+ # These should ideally match the CI jobs
+ ubuntu)
+ export DIB_OS_RELEASE="${DIB_OS_RELEASE:-xenial}"
+ export DIB_OS_ELEMENT="${DIB_OS_ELEMENT:-ubuntu-minimal}"
+ export DIB_OS_PACKAGES="${DIB_OS_PACKAGES:-vlan,vim,less,bridge-utils,language-pack-en,iputils-ping,rsyslog,curl,iptables}"
+ ;;
+ centos)
+ export DIB_OS_RELEASE="${DIB_OS_RELEASE:-7}"
+ export DIB_OS_ELEMENT="${DIB_OS_ELEMENT:-centos-minimal}"
+ export DIB_OS_PACKAGES="${DIB_OS_PACKAGES:-vim,less,bridge-utils,iputils,rsyslog,curl,iptables}"
+ ;;
+ opensuse)
+ export DIB_OS_RELEASE="${DIB_OS_RELEASE:-42.3}"
+ export DIB_OS_ELEMENT="${DIB_OS_ELEMENT:-opensuse-minimal}"
+ export DIB_OS_PACKAGES="${DIB_OS_PACKAGES:-vim,less,bridge-utils,iputils,rsyslog,curl,iptables}"
+ ;;
+esac
+
# Copy the OS images if found
if [[ -e ${XCI_PATH}/deployment_image.qcow2 ]]; then
sudo mkdir -p /httpboot
diff --git a/bifrost/scripts/destroy-env.sh b/bifrost/scripts/destroy-env.sh
index 3ee66642..97638303 100755
--- a/bifrost/scripts/destroy-env.sh
+++ b/bifrost/scripts/destroy-env.sh
@@ -23,8 +23,10 @@ rm -rf ${HOME}/.config/openstack
if which vbmc &>/dev/null || { [[ -e /opt/stack/bifrost/bin/activate ]] && source /opt/stack/bifrost/bin/activate; }; then
# Delete all libvirt VMs and hosts from vbmc (look for a port number)
for vm in $(vbmc list | awk '/[0-9]/{{ print $2 }}'); do
- virsh destroy $vm || true
- virsh undefine $vm || true
+ if which virsh &>/dev/null; then
+ virsh destroy $vm || true
+ virsh undefine $vm || true
+ fi
vbmc delete $vm
done
which vbmc &>/dev/null || { [[ -e /opt/stack/bifrost/bin/activate ]] && deactivate; }