Merge "Add a Centos8 UEFI based job"
This commit is contained in:
commit
1c06881c32
32
.zuul.yaml
32
.zuul.yaml
@ -21,6 +21,7 @@
|
|||||||
- ^tox.ini$
|
- ^tox.ini$
|
||||||
timeout: 5400
|
timeout: 5400
|
||||||
required-projects:
|
required-projects:
|
||||||
|
- openstack/diskimage-builder
|
||||||
- openstack/keystone
|
- openstack/keystone
|
||||||
- openstack/neutron
|
- openstack/neutron
|
||||||
- openstack/glance
|
- openstack/glance
|
||||||
@ -139,6 +140,35 @@
|
|||||||
metalsmith_swap_size: 1024
|
metalsmith_swap_size: 1024
|
||||||
metalsmith_traits: [CUSTOM_GOLD]
|
metalsmith_traits: [CUSTOM_GOLD]
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: metalsmith-integration-glance-localboot-centos8-uefi
|
||||||
|
description: |
|
||||||
|
Integration job using Glance as image source and CentOS8 with local boot
|
||||||
|
and UEFI. Images are built with diskimage-builder.
|
||||||
|
parent: metalsmith-integration-base
|
||||||
|
timeout: 7200
|
||||||
|
run: playbooks/integration/centos8-integration.yaml
|
||||||
|
vars:
|
||||||
|
devstack_localrc:
|
||||||
|
# NOTE(dtantsur): we need to use streaming, otherwise the image won't
|
||||||
|
# fit in RAM.
|
||||||
|
IRONIC_AGENT_IMAGE_DOWNLOAD_SOURCE: http
|
||||||
|
IRONIC_BOOT_MODE: uefi
|
||||||
|
IRONIC_VM_SPECS_RAM: 3072
|
||||||
|
devstack_services:
|
||||||
|
# Since we're using streaming, try non-swift backends.
|
||||||
|
s-account: false
|
||||||
|
s-container: false
|
||||||
|
s-object: false
|
||||||
|
s-proxy: false
|
||||||
|
configure_instance_user: metalsmith
|
||||||
|
metalsmith_netboot: false
|
||||||
|
metalsmith_precreate_port: false
|
||||||
|
metalsmith_partition_image: test-centos-partition
|
||||||
|
metalsmith_whole_disk_image: test-centos-wholedisk
|
||||||
|
metalsmith_swap_size: 1024
|
||||||
|
metalsmith_traits: [CUSTOM_GOLD]
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: metalsmith-integration-glance-netboot-cirros-iscsi
|
name: metalsmith-integration-glance-netboot-cirros-iscsi
|
||||||
description: |
|
description: |
|
||||||
@ -183,6 +213,8 @@
|
|||||||
check:
|
check:
|
||||||
jobs:
|
jobs:
|
||||||
- metalsmith-integration-glance-localboot-centos7
|
- metalsmith-integration-glance-localboot-centos7
|
||||||
|
- metalsmith-integration-glance-localboot-centos8-uefi:
|
||||||
|
voting: false
|
||||||
- metalsmith-integration-glance-netboot-cirros-iscsi
|
- metalsmith-integration-glance-netboot-cirros-iscsi
|
||||||
- metalsmith-integration-glance-netboot-cirros-direct
|
- metalsmith-integration-glance-netboot-cirros-direct
|
||||||
- metalsmith-integration-http-netboot-cirros-direct
|
- metalsmith-integration-http-netboot-cirros-direct
|
||||||
|
76
playbooks/integration/centos8-image.yaml
Normal file
76
playbooks/integration/centos8-image.yaml
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
---
|
||||||
|
- name: "Set centos image facts"
|
||||||
|
set_fact:
|
||||||
|
centos_image_file: ~/centos8-wholedisk.qcow2
|
||||||
|
centos_initramfs_file: ~/centos8-partition.initrd
|
||||||
|
centos_kernel_file: ~/centos8-partition.vmlinuz
|
||||||
|
centos_partition_file: ~/centos8-partition.qcow2
|
||||||
|
|
||||||
|
- name: Install kpartx
|
||||||
|
package:
|
||||||
|
name: kpartx
|
||||||
|
state: present
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Install DIB
|
||||||
|
pip:
|
||||||
|
name: diskimage-builder
|
||||||
|
become: true
|
||||||
|
vars:
|
||||||
|
ansible_python_interpreter: /usr/bin/{{ metalsmith_python | default('python') }}
|
||||||
|
|
||||||
|
- name: Make kernel files readable (workaround for Ubuntu)
|
||||||
|
shell: chmod 0644 /boot/vmlinuz-*
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Build a centos8 wholedisk image
|
||||||
|
command: disk-image-create centos grub2 vm block-device-efi -o centos8-wholedisk
|
||||||
|
environment:
|
||||||
|
OS_RELEASE: 8
|
||||||
|
|
||||||
|
- name: Build a centos8 partition image
|
||||||
|
command: disk-image-create centos grub2 baremetal -o centos8-partition
|
||||||
|
environment:
|
||||||
|
OS_RELEASE: 8
|
||||||
|
|
||||||
|
- name: Upload the CentOS whole-disk image
|
||||||
|
command: >
|
||||||
|
openstack image create --disk-format qcow2
|
||||||
|
--public --file {{ centos_image_file }}
|
||||||
|
{{ centos_glance_whole_disk_image }}
|
||||||
|
environment:
|
||||||
|
OS_CLOUD: devstack-admin
|
||||||
|
when: centos_glance_whole_disk_image is defined
|
||||||
|
|
||||||
|
- name: Upload the CentOS kernel image
|
||||||
|
command: >
|
||||||
|
openstack image create --disk-format aki --container-format aki \
|
||||||
|
--public --file {{ centos_kernel_file }} -f value -c id
|
||||||
|
{{ centos_glance_kernel_image }}
|
||||||
|
register: centos_kernel_id
|
||||||
|
failed_when: centos_kernel_id.stdout == ""
|
||||||
|
environment:
|
||||||
|
OS_CLOUD: devstack-admin
|
||||||
|
when: centos_glance_kernel_image is defined
|
||||||
|
|
||||||
|
- name: Upload the CentOS initramfs image
|
||||||
|
command: >
|
||||||
|
openstack image create --disk-format ari --container-format ari \
|
||||||
|
--public --file {{ centos_initramfs_file }} -f value -c id
|
||||||
|
{{ centos_glance_initramds_image }}
|
||||||
|
register: centos_initramfs_id
|
||||||
|
failed_when: centos_initramfs_id.stdout == ""
|
||||||
|
environment:
|
||||||
|
OS_CLOUD: devstack-admin
|
||||||
|
when: centos_glance_initramds_image is defined
|
||||||
|
|
||||||
|
- name: Upload the CentOS partition image
|
||||||
|
command: >
|
||||||
|
openstack image create --disk-format qcow2
|
||||||
|
--public --file {{ centos_partition_file }}
|
||||||
|
--property kernel_id={{ centos_kernel_id.stdout }}
|
||||||
|
--property ramdisk_id={{ centos_initramfs_id.stdout }}
|
||||||
|
{{ centos_glance_root_image }}
|
||||||
|
environment:
|
||||||
|
OS_CLOUD: devstack-admin
|
||||||
|
when: centos_glance_root_image is defined
|
37
playbooks/integration/centos8-integration.yaml
Normal file
37
playbooks/integration/centos8-integration.yaml
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
---
|
||||||
|
- name: Perform initial setup
|
||||||
|
include: initial-setup.yaml
|
||||||
|
|
||||||
|
- hosts: all
|
||||||
|
environment:
|
||||||
|
OS_CLOUD: devstack-admin
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- include_tasks: ssh-key.yaml
|
||||||
|
|
||||||
|
- include_tasks: centos8-image.yaml
|
||||||
|
when:
|
||||||
|
- metalsmith_whole_disk_image is defined
|
||||||
|
- metalsmith_partition_image is defined
|
||||||
|
|
||||||
|
- include_tasks: cirros-image.yaml
|
||||||
|
when:
|
||||||
|
- metalsmith_whole_disk_image is undefined
|
||||||
|
- metalsmith_partition_image is undefined
|
||||||
|
|
||||||
|
- name: Test a whole-disk image
|
||||||
|
include_tasks: exercise.yaml
|
||||||
|
vars:
|
||||||
|
metalsmith_image: "{{ metalsmith_whole_disk_image }}"
|
||||||
|
metalsmith_image_checksum: "{{ metalsmith_whole_disk_checksum | default('') }}"
|
||||||
|
metalsmith_root_size:
|
||||||
|
# NOTE(dtantsur): cannot specify swap with whole disk images
|
||||||
|
metalsmith_swap_size:
|
||||||
|
|
||||||
|
- name: Test a partition image
|
||||||
|
include_tasks: exercise.yaml
|
||||||
|
vars:
|
||||||
|
metalsmith_image: "{{ metalsmith_partition_image }}"
|
||||||
|
metalsmith_image_checksum: "{{ metalsmith_partition_checksum | default('') }}"
|
||||||
|
metalsmith_image_kernel: "{{ metalsmith_partition_kernel_image | default('') }}"
|
||||||
|
metalsmith_image_ramdisk: "{{ metalsmith_partition_ramdisk_image | default('') }}"
|
Loading…
Reference in New Issue
Block a user