diff options
author | Markos Chandras <mchandras@suse.de> | 2018-03-07 16:36:03 +0000 |
---|---|---|
committer | Markos Chandras <mchandras@suse.de> | 2018-03-07 17:48:21 +0000 |
commit | e66847184999a84c472648e78d71e12b7c5b23d2 (patch) | |
tree | 36f1eb5e1eda84aa6406bff0f7951f6a10d643d0 /bifrost | |
parent | c4651cc986ac5277d95027df77bc42cc783f2777 (diff) |
bifrost: Use the pre-built XCI OS images instead of dib
We already have images for all 3 distros which we could simply re-use
for all the XCI VM deployments instead of building new ones everytime
with DIB. The images will be copied to the new VM from the cache
directory if they are available otherwise we will simply download them
during the XCI execution phase.
Change-Id: I2a8391650558511668654c6b54a10db316f867a2
Signed-off-by: Markos Chandras <mchandras@suse.de>
Diffstat (limited to 'bifrost')
-rw-r--r-- | bifrost/playbooks/opnfv-virtual.yaml | 48 | ||||
-rwxr-xr-x | bifrost/scripts/bifrost-provision.sh | 4 |
2 files changed, 49 insertions, 3 deletions
diff --git a/bifrost/playbooks/opnfv-virtual.yaml b/bifrost/playbooks/opnfv-virtual.yaml index 4e985db8..cfcb71a1 100644 --- a/bifrost/playbooks/opnfv-virtual.yaml +++ b/bifrost/playbooks/opnfv-virtual.yaml @@ -24,6 +24,45 @@ - name: "Override the ipv4_gateway setting" set_fact: ipv4_gateway: "192.168.122.1" + - name: Prepare the XCI pre-built images + block: + - name: Create the PXE directory + file: + path: /httpboot + state: directory + become: yes + - name: Download the {{ xci_distro }} image checksum file + get_url: + dest: /httpboot/{{ xci_distro }}.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/{{ xci_distro }}.qcow2.sha256.txt + register: _image_checksum + - fail: + msg: "Failed to get image checksum" + when: _image_checksum == '' + - set_fact: + image_checksum: "{{ _image_checksum.stdout }}" + - name: Download the {{ xci_distro }} image file + get_url: + url: http://artifacts.opnfv.org/releng/xci/images/{{ xci_distro }}.qcow2 + checksum: "sha256:{{ image_checksum }}" + 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: @@ -49,7 +88,9 @@ dib_os_release: "jessie" dib_elements: "ironic-agent {{ ipa_extra_dib_elements | default('') }}" dib_notmpfs: true - when: create_ipa_image | bool == true + when: + - create_ipa_image | bool == true + - not use_prebuilt_images | bool == false - role: bifrost-create-dib-image dib_imagetype: "qcow2" dib_imagename: "{{deploy_image}}" @@ -61,7 +102,10 @@ dib_elements: "vm enable-serial-console simple-init devuser openssh-server growroot pip-and-virtualenv {{ extra_dib_elements }}" dib_packages: "{{ lookup('env', 'DIB_OS_PACKAGES') }}" dib_notmpfs: true - when: create_image_via_dib | bool == true and transform_boot_image | bool == false + when: + - create_image_via_dib | bool == true + - transform_boot_image | bool == false + - use_prebuilt_images | bool == false - role: bifrost-keystone-client-config user: "{{ ansible_env.SUDO_USER }}" clouds: diff --git a/bifrost/scripts/bifrost-provision.sh b/bifrost/scripts/bifrost-provision.sh index e64277d6..5ebe2031 100755 --- a/bifrost/scripts/bifrost-provision.sh +++ b/bifrost/scripts/bifrost-provision.sh @@ -141,7 +141,9 @@ ${ANSIBLE} ${XCI_ANSIBLE_VERBOSITY} \ -e ironicinspectorclient_git_branch=${BIFROST_IRONIC_INSPECTOR_CLIENT_VERSION} \ -e ironicclient_source_install=true \ -e ironicclient_git_branch=${BIFROST_IRONIC_CLIENT_VERSION} \ - -e ironic_git_branch=${BIFROST_IRONIC_VERSION} + -e ironic_git_branch=${BIFROST_IRONIC_VERSION} \ + -e use_prebuilt_images=${BIFROST_USE_PREBUILT_IMAGES} \ + -e xci_distro=${XCI_DISTRO} EXITCODE=$? if [ $EXITCODE != 0 ]; then |