diff --git a/.zuul.yaml b/.zuul.yaml index c952811..d1c8224 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -67,6 +67,17 @@ image_type: 'dib' image_distro: 'centos7' +- job: + name: ironic-python-agent-check-image-dib-centos8 + parent: ironic-python-agent-check-image-base + required-projects: + # NOTE(dtantsur): used for bindep only + - openstack/diskimage-builder + vars: + image_type: 'dib' + image_distro: 'centos-minimal' + image_release: 8 + - job: name: ironic-python-agent-check-image-dib-fedora parent: ironic-python-agent-check-image-base @@ -112,6 +123,8 @@ - ipa-tempest-wholedisk-bios-ipmi-iscsi-tinyipa-src - ironic-python-agent-check-image-tinyipa - ironic-python-agent-check-image-dib-centos7 + - ironic-python-agent-check-image-dib-centos8: + voting: false - ironic-python-agent-check-image-dib-fedora: voting: false - ironic-python-agent-check-image-dib-ubuntu: diff --git a/dib/ironic-python-agent-ramdisk/pkg-map b/dib/ironic-python-agent-ramdisk/pkg-map index 1c83de3..4a9df1f 100644 --- a/dib/ironic-python-agent-ramdisk/pkg-map +++ b/dib/ironic-python-agent-ramdisk/pkg-map @@ -8,6 +8,15 @@ "qemu-utils": "qemu-img", "python-dev": "python3-devel" } + }, + "centos": { + "8": { + "tgt": "targetcli", + "curl": "curl", + "ironic-python-agent": "openstack-ironic-python-agent", + "qemu-utils": "qemu-img", + "python-dev": "python3-devel" + } } }, "family": { diff --git a/ironic_python_agent_builder/__init__.py b/ironic_python_agent_builder/__init__.py index 20d4e4b..380b6e0 100644 --- a/ironic_python_agent_builder/__init__.py +++ b/ironic_python_agent_builder/__init__.py @@ -42,6 +42,7 @@ def find_elements_path(): def main(): parser = argparse.ArgumentParser() parser.add_argument("distribution", help="Distribution to use") + parser.add_argument("-r", "--release", help="Distribution release to use") parser.add_argument("-o", "--output", help="Output base file name", default="ironic-python-agent") parser.add_argument("-e", "--element", action='append', default=[], @@ -54,6 +55,8 @@ def main(): # size of the image. os.environ['DIB_INSTALLTYPE_pip_and_virtualenv'] = 'package' args = parser.parse_args() + if args.release: + os.environ['DIB_RELEASE'] = args.release try: subprocess.check_call(['disk-image-create', '-o', args.output, 'ironic-python-agent-ramdisk', diff --git a/roles/ipa-build-dib-image/defaults/main.yaml b/roles/ipa-build-dib-image/defaults/main.yaml index f9ba01f..3df9816 100644 --- a/roles/ipa-build-dib-image/defaults/main.yaml +++ b/roles/ipa-build-dib-image/defaults/main.yaml @@ -1,4 +1,5 @@ image_distro: centos7 +image_release: ipa_branch_path: '{{ zuul.branch | replace("/", "-") }}' ipa_source_path: '{{ ansible_user_dir }}/src/opendev.org/openstack/ironic-python-agent' ipa_raw_dir: '{{ ansible_user_dir }}/src/opendev.org/openstack/ironic-python-agent/UPLOAD_RAW' diff --git a/roles/ipa-build-dib-image/tasks/main.yaml b/roles/ipa-build-dib-image/tasks/main.yaml index 1cef2a3..865a5df 100644 --- a/roles/ipa-build-dib-image/tasks/main.yaml +++ b/roles/ipa-build-dib-image/tasks/main.yaml @@ -4,7 +4,9 @@ - name: Build a DIB image command: | - ironic-python-agent-builder -o {{ image_name }} {{ image_distro }} + ironic-python-agent-builder -o {{ image_name }} + {{ "-r {}".format(image_release) if image_release else '' }} + {{ image_distro }} environment: # Increase from the default value of 30 DIB_DHCP_TIMEOUT: 60