summaryrefslogtreecommitdiffstats
path: root/prototypes
diff options
context:
space:
mode:
Diffstat (limited to 'prototypes')
-rw-r--r--prototypes/bifrost/README.md22
-rw-r--r--prototypes/bifrost/playbooks/test-bifrost-infracloud.yaml17
-rwxr-xr-xprototypes/bifrost/scripts/destroy-env.sh12
-rwxr-xr-xprototypes/bifrost/scripts/test-bifrost-deployment.sh7
-rw-r--r--prototypes/puppet-infracloud/hiera/common.yaml2
-rw-r--r--prototypes/puppet-infracloud/modules/opnfv/manifests/compute.pp8
-rw-r--r--prototypes/puppet-infracloud/modules/opnfv/manifests/controller.pp8
7 files changed, 46 insertions, 30 deletions
diff --git a/prototypes/bifrost/README.md b/prototypes/bifrost/README.md
index f50ffb217..df34f9c87 100644
--- a/prototypes/bifrost/README.md
+++ b/prototypes/bifrost/README.md
@@ -7,29 +7,31 @@ Please follow that steps:
1. Clone bifrost::
- git clone https://git.openstack.org/openstack/bifrost /opt/bifrost
+ sudo git clone https://git.openstack.org/openstack/bifrost /opt/bifrost
2. Clone releng::
- git clone https://gerrit.opnfv.org/gerrit/releng /opt/releng
+ sudo git clone https://gerrit.opnfv.org/gerrit/releng /opt/releng
3. Clone infracloud::
- git clone https://git.openstack.org/openstack-infra/puppet-infracloud /opt/puppet-infracloud
+ sudo git clone https://git.openstack.org/openstack-infra/puppet-infracloud /opt/puppet-infracloud
4. Combine releng scripts and playbooks with bifrost::
- cp -R /opt/releng/prototypes/bifrost/* /opt/bifrost/
+ sudo cp -R /opt/releng/prototypes/bifrost/* /opt/bifrost/
-5. Run destroy script if you need to cleanup previous environment::
+5. If you are on a RHEL/CentOS box, ensure that selinux is disabled
+
+6. Run destroy script if you need to cleanup previous environment::
cd /opt/bifrost
- ./scripts/destroy-env.sh
+ sudo ./scripts/destroy-env.sh
-6. Run deployment script to spin up 3 vms with bifrost: jumphost, controller and compute::
+7. Run deployment script to spin up 3 vms with bifrost: jumphost, controller and compute::
cd /opt/bifrost
- ./scripts/test-bifrost-deployment.sh
+ sudo ./scripts/test-bifrost-deployment.sh
It is likely that the script will show some errors due to timeout. Please ignore the errors, and wait until the vms are completely bootstrapped. To verify it you can check with ironic::
@@ -39,10 +41,10 @@ It is likely that the script will show some errors due to timeout. Please ignore
And wait until all the vms are in **active** Provisioning State.
-7. Check the IPs assigned to each of the VMS. You can check it by looking at inventory:
+8. Check the IPs assigned to each of the VMS. You can check it by looking at inventory:
cat /tmp/baremetal.csv
-8. You can enter into the vms with devuser login/pass:
+9. You can enter into the vms with devuser login/pass:
ssh devuser@192.168.122.2
diff --git a/prototypes/bifrost/playbooks/test-bifrost-infracloud.yaml b/prototypes/bifrost/playbooks/test-bifrost-infracloud.yaml
index ba548b305..b4dffdccf 100644
--- a/prototypes/bifrost/playbooks/test-bifrost-infracloud.yaml
+++ b/prototypes/bifrost/playbooks/test-bifrost-infracloud.yaml
@@ -41,8 +41,21 @@
# NOTE(TheJulia): While the next step creates a ramdisk, some elements
# do not support ramdisk-image-create as they invoke steps to cleanup
# the ramdisk which causes ramdisk-image-create to believe it failed.
- - { role: bifrost-create-dib-image, dib_imagename: "{{ http_boot_folder }}/ipa", build_ramdisk: false, dib_os_element: "{{ ipa_dib_os_element|default('debian') }}", dib_os_release: "jessie", dib_elements: "ironic-agent {{ ipa_extra_dib_elements | default('') }}", when: create_ipa_image | bool == true }
- - { role: bifrost-create-dib-image, dib_imagetype: "qcow2", dib_imagename: "{{deploy_image}}", dib_os_element: "ubuntu-minimal", dib_os_release: "trusty", dib_elements: "vm serial-console simple-init devuser infra-cloud-bridge puppet growroot {{ extra_dib_elements|default('') }}", dib_packages: "openssh-server,vlan,vim,less,bridge-utils,language-pack-en,iputils-ping,rsyslog,curl", when: create_image_via_dib | bool == true and transform_boot_image | bool == false }
+ - role: bifrost-create-dib-image
+ dib_imagename: "{{ http_boot_folder }}/ipa"
+ build_ramdisk: false
+ dib_os_element: "{{ ipa_dib_os_element|default('debian') }}"
+ dib_os_release: "jessie"
+ dib_elements: "ironic-agent {{ ipa_extra_dib_elements | default('') }}"
+ when: create_ipa_image | bool == true
+ - role: bifrost-create-dib-image
+ dib_imagetype: "qcow2"
+ dib_imagename: "{{deploy_image}}"
+ dib_os_element: "{{ lookup('env','DIB_OS_ELEMENT') }}"
+ dib_os_release: "{{ lookup('env', 'DIB_OS_RELEASE') }}"
+ dib_elements: "vm serial-console simple-init devuser infra-cloud-bridge puppet growroot {{ extra_dib_elements|default('') }}"
+ dib_packages: "{{ lookup('env', 'DIB_OS_PACKAGES') }}"
+ when: create_image_via_dib | bool == true and transform_boot_image | bool == false
environment:
http_proxy: "{{ lookup('env','http_proxy') }}"
https_proxy: "{{ lookup('env','https_proxy') }}"
diff --git a/prototypes/bifrost/scripts/destroy-env.sh b/prototypes/bifrost/scripts/destroy-env.sh
index 4dffee62a..86d7bc487 100755
--- a/prototypes/bifrost/scripts/destroy-env.sh
+++ b/prototypes/bifrost/scripts/destroy-env.sh
@@ -7,6 +7,13 @@
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
+
+# We need to execute everything as root
+if [[ $(whoami) != "root" ]]; then
+ echo "Error: This script must be run as root!"
+ exit 1
+fi
+
virsh destroy jumphost.opnfvlocal || true
virsh destroy controller00.opnfvlocal || true
virsh destroy compute00.opnfvlocal || true
@@ -22,11 +29,13 @@ mysql -u root ironic --execute "delete from node_tags;"
mysql -u root ironic --execute "delete from nodes;"
mysql -u root ironic --execute "delete from conductors;"
echo "removing leases"
-> /var/lib/dnsmasq/dnsmasq.leases
+[[ -e /var/lib/misc/dnsmasq/dnsmasq.leases ]] && > /var/lib/misc/dnsmasq/dnsmasq.leases
echo "removing logs"
rm -rf /var/log/libvirt/baremetal_logs/*.log
# clean up dib images only if requested explicitly
+CLEAN_DIB_IMAGES=${CLEAN_DIB_IMAGES:-false}
+
if [ $CLEAN_DIB_IMAGES = "true" ]; then
rm -rf /httpboot/*
rm -rf /tftpboot/*
@@ -36,6 +45,7 @@ fi
rm -rf /var/lib/libvirt/images/*.qcow2
echo "restarting services"
+service dnsmasq restart
service libvirtd restart
service ironic-api restart
service ironic-conductor start
diff --git a/prototypes/bifrost/scripts/test-bifrost-deployment.sh b/prototypes/bifrost/scripts/test-bifrost-deployment.sh
index d796f3509..fb49afc42 100755
--- a/prototypes/bifrost/scripts/test-bifrost-deployment.sh
+++ b/prototypes/bifrost/scripts/test-bifrost-deployment.sh
@@ -57,6 +57,13 @@ export ELEMENTS_PATH=/usr/share/diskimage-builder/elements:/opt/puppet-infraclou
export DIB_DEV_USER_PWDLESS_SUDO=yes
export DIB_DEV_USER_PASSWORD=devuser
+# settings for distro: trusty/ubuntu-minimal, 7/centos-minimal
+export DIB_OS_RELEASE=${DIB_OS_RELEASE:-trusty}
+export DIB_OS_ELEMENT=${DIB_OS_ELEMENT:-ubuntu-minimal}
+
+# for centos 7: "openssh-server,vim,less,bridge-utils,iputils,rsyslog,curl"
+export DIB_OS_PACKAGES=${DIB_OS_PACKAGES:-"openssh-server,vlan,vim,less,bridge-utils,language-pack-en,iputils-ping,rsyslog,curl"}
+
# Source Ansible
# NOTE(TheJulia): Ansible stable-1.9 source method tosses an error deep
# under the hood which -x will detect, so for this step, we need to suspend
diff --git a/prototypes/puppet-infracloud/hiera/common.yaml b/prototypes/puppet-infracloud/hiera/common.yaml
index 7d6b44063..1fcde2f75 100644
--- a/prototypes/puppet-infracloud/hiera/common.yaml
+++ b/prototypes/puppet-infracloud/hiera/common.yaml
@@ -76,5 +76,5 @@ hosts:
compute00.opnfvlocal:
ip: 192.168.122.4
-# br-eth0 for debian, br-ens3 for RHEL
+# br-eth0 for debian, br_ens3 for RHEL
bridge_name: br-eth0
diff --git a/prototypes/puppet-infracloud/modules/opnfv/manifests/compute.pp b/prototypes/puppet-infracloud/modules/opnfv/manifests/compute.pp
index 77908c0b8..ca548a5d5 100644
--- a/prototypes/puppet-infracloud/modules/opnfv/manifests/compute.pp
+++ b/prototypes/puppet-infracloud/modules/opnfv/manifests/compute.pp
@@ -8,14 +8,6 @@ class opnfv::compute (
$controller_public_address,
$virt_type = 'kvm',
) {
- # disable selinux if needed
- if $::osfamily == 'RedHat' {
- class { 'selinux':
- mode => 'permissive',
- before => Class['::infracloud::compute'],
- }
- }
-
class { '::infracloud::compute':
nova_rabbit_password => $nova_rabbit_password,
neutron_rabbit_password => $neutron_rabbit_password,
diff --git a/prototypes/puppet-infracloud/modules/opnfv/manifests/controller.pp b/prototypes/puppet-infracloud/modules/opnfv/manifests/controller.pp
index 4bae42cf7..7522692c1 100644
--- a/prototypes/puppet-infracloud/modules/opnfv/manifests/controller.pp
+++ b/prototypes/puppet-infracloud/modules/opnfv/manifests/controller.pp
@@ -30,14 +30,6 @@ class opnfv::controller (
$opnfv_password,
$opnfv_email = 'opnfvuser@gmail.com',
) {
- # disable selinux if needed
- if $::osfamily == 'RedHat' {
- class { 'selinux':
- mode => 'permissive',
- before => Class['::infracloud::controller'],
- }
- }
-
class { '::infracloud::controller':
keystone_rabbit_password => $keystone_rabbit_password,
neutron_rabbit_password => $neutron_rabbit_password,