Fedora 25-27 support
Update bifrost to handle fedora as minor changes between releases have been slightly breaking, and have gone largely un-noticed since the bulk of bifrost users seem to use centos or ubuntu. Added a fedora 26 job to help enforce support moving forward. Change-Id: I9a654b91edfa52321adccfa5df0c260eb0c9e487 Closes-Bug: #1695969 Closes-Bug: #1695968
This commit is contained in:
parent
8b4c956bf0
commit
9b15ca277f
@ -0,0 +1,16 @@
|
||||
---
|
||||
sgabios_dir: /usr/share/sgabios/
|
||||
libvirt_service_name: libvirtd
|
||||
required_packages:
|
||||
- qemu-img
|
||||
- qemu-kvm
|
||||
- qemu-system-x86
|
||||
- sgabios-bin
|
||||
- libvirt
|
||||
- libvirt-client
|
||||
- libvirt-daemon
|
||||
- libvirt-python
|
||||
- python-lxml
|
||||
- pkgconfig
|
||||
- libvirt-devel
|
||||
- libselinux-python
|
@ -57,6 +57,15 @@
|
||||
state: stopped
|
||||
ignore_errors: true
|
||||
|
||||
# NOTE(TheJulia): Seems if you test in a VM, this might
|
||||
# be helpful if your installed your host originally
|
||||
# with the default 192.168.122/0/24 network
|
||||
- name: destroy libvirt network
|
||||
virt_net:
|
||||
name: "{{ test_vm_network }}"
|
||||
state: absent
|
||||
uri: "{{ test_vm_libvirt_uri }}"
|
||||
|
||||
- name: ensure libvirt network is present
|
||||
virt_net:
|
||||
name: "{{ test_vm_network }}"
|
||||
|
@ -0,0 +1,44 @@
|
||||
---
|
||||
init_template: systemd_template.j2
|
||||
init_dest_dir: /usr/lib/systemd/system/
|
||||
init_ext: .service
|
||||
syslinux_tftp_dir: /var/lib/tftpboot
|
||||
ipxe_dir: /usr/share/ipxe/
|
||||
ipxe_full_binary: ipxe.lkrn
|
||||
ironic_rootwrap_dir: /usr/bin/
|
||||
nginx_user: nginx
|
||||
mysql_service_name: mariadb
|
||||
tftp_service_name: tftp
|
||||
required_packages:
|
||||
- mariadb-server
|
||||
- dnsmasq
|
||||
- rabbitmq-server
|
||||
- python-devel
|
||||
- MySQL-python
|
||||
- libselinux-python
|
||||
- python-iniparse
|
||||
- libffi-devel
|
||||
- libxslt-devel
|
||||
- openssl-devel
|
||||
- libxml2-devel
|
||||
- ipxe-bootimgs
|
||||
- tftp-server
|
||||
- syslinux
|
||||
- syslinux-tftpboot
|
||||
- xinetd
|
||||
- parted
|
||||
- ipmitool
|
||||
- psmisc
|
||||
- nginx
|
||||
- wget
|
||||
- genisoimage
|
||||
- kpartx
|
||||
- qemu-kvm
|
||||
- qemu-img
|
||||
- openwsman-python
|
||||
- libselinux-python
|
||||
- policycoreutils-python
|
||||
- debootstrap
|
||||
- gcc
|
||||
- socat
|
||||
iscsi_client_package: "iscsi-initiator-utils"
|
@ -0,0 +1,45 @@
|
||||
---
|
||||
init_template: systemd_template.j2
|
||||
init_dest_dir: /usr/lib/systemd/system/
|
||||
init_ext: .service
|
||||
syslinux_tftp_dir: /var/lib/tftpboot
|
||||
ipxe_dir: /usr/share/ipxe/
|
||||
ipxe_full_binary: ipxe.lkrn
|
||||
ironic_rootwrap_dir: /usr/bin/
|
||||
nginx_user: nginx
|
||||
mysql_service_name: mariadb
|
||||
tftp_service_name: tftp
|
||||
required_packages:
|
||||
- mariadb-server
|
||||
- dnsmasq
|
||||
- rabbitmq-server
|
||||
- python-devel
|
||||
- MySQL-python
|
||||
- libselinux-python
|
||||
- python-iniparse
|
||||
- libffi-devel
|
||||
- libxslt-devel
|
||||
- openssl-devel
|
||||
- libxml2-devel
|
||||
- ipxe-bootimgs
|
||||
- tftp-server
|
||||
- syslinux
|
||||
- syslinux-tftpboot
|
||||
- xinetd
|
||||
- parted
|
||||
- ipmitool
|
||||
- psmisc
|
||||
- nginx
|
||||
- wget
|
||||
- genisoimage
|
||||
- kpartx
|
||||
- qemu-kvm
|
||||
- qemu-img
|
||||
- openwsman-python
|
||||
- libselinux-python
|
||||
- policycoreutils-python
|
||||
- policycoreutils-python-utils
|
||||
- debootstrap
|
||||
- gcc
|
||||
- socat
|
||||
iscsi_client_package: "iscsi-initiator-utils"
|
@ -0,0 +1,45 @@
|
||||
---
|
||||
init_template: systemd_template.j2
|
||||
init_dest_dir: /usr/lib/systemd/system/
|
||||
init_ext: .service
|
||||
syslinux_tftp_dir: /var/lib/tftpboot
|
||||
ipxe_dir: /usr/share/ipxe/
|
||||
ipxe_full_binary: ipxe.lkrn
|
||||
ironic_rootwrap_dir: /usr/bin/
|
||||
nginx_user: nginx
|
||||
mysql_service_name: mariadb
|
||||
tftp_service_name: tftp
|
||||
required_packages:
|
||||
- mariadb-server
|
||||
- dnsmasq
|
||||
- rabbitmq-server
|
||||
- python-devel
|
||||
- MySQL-python
|
||||
- libselinux-python
|
||||
- python-iniparse
|
||||
- libffi-devel
|
||||
- libxslt-devel
|
||||
- openssl-devel
|
||||
- libxml2-devel
|
||||
- ipxe-bootimgs
|
||||
- tftp-server
|
||||
- syslinux
|
||||
- syslinux-tftpboot
|
||||
- xinetd
|
||||
- parted
|
||||
- ipmitool
|
||||
- psmisc
|
||||
- nginx
|
||||
- wget
|
||||
- genisoimage
|
||||
- kpartx
|
||||
- qemu-kvm
|
||||
- qemu-img
|
||||
- openwsman-python
|
||||
- libselinux-python
|
||||
- policycoreutils-python
|
||||
- policycoreutils-python-utils
|
||||
- debootstrap
|
||||
- gcc
|
||||
- socat
|
||||
iscsi_client_package: "iscsi-initiator-utils"
|
@ -201,6 +201,7 @@
|
||||
group: "ironic"
|
||||
with_items:
|
||||
- "/var/lib/ironic"
|
||||
- "/var/lib/ironic/master_images"
|
||||
- "/var/lib/ironic/images"
|
||||
|
||||
- name: "Set permissions for /var/log/ironic for the ironic user"
|
||||
@ -283,7 +284,10 @@
|
||||
state: present
|
||||
|
||||
- name: "Add proper context on created data for http_boot"
|
||||
command: semanage fcontext -a -t httpd_sys_content_t "{{ http_boot_folder }}(/.*)?"
|
||||
sefcontext:
|
||||
target: "{{ http_boot_folder }}(/.*)?"
|
||||
setype: httpd_sys_content_t
|
||||
state: present
|
||||
|
||||
- name: Copy ironic policy file to temporary directory
|
||||
copy:
|
||||
|
@ -105,7 +105,8 @@
|
||||
- skip_install is not defined
|
||||
- enable_venv | bool == false
|
||||
- (ansible_distribution == 'CentOS' and ansible_distribution_major_version|version_compare('7', '<=')) or
|
||||
(ansible_distribution == 'Ubuntu' and ansible_distribution_version|version_compare('14.10', '=='))
|
||||
(ansible_distribution == 'Ubuntu' and ansible_distribution_version|version_compare('14.10', '==')) or
|
||||
(ansible_distribution == 'Fedora' and ansible_distribution_version|version_compare('25', '>='))
|
||||
|
||||
- name: "Install Ironic using pip"
|
||||
include: pip_install.yml
|
||||
|
@ -38,6 +38,7 @@ tftp_root = /tftpboot
|
||||
pxe_bootfile_name = undionly.kpxe
|
||||
ipxe_enabled = true
|
||||
ipxe_boot_script = /etc/ironic/boot.ipxe
|
||||
tftp_master_path = /var/lib/ironic/master_images
|
||||
|
||||
[deploy]
|
||||
http_url = http://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface]['ipv4']['address'] }}:{{ file_url_port }}/
|
||||
|
@ -0,0 +1,23 @@
|
||||
---
|
||||
features:
|
||||
- |
|
||||
Adds support for Fedora 25, 26, and 27.
|
||||
upgrades:
|
||||
- The location for the tftp master_images cache folder has
|
||||
changed from ``/tftpboot/master_images`` to
|
||||
``/var/lib/ironic/master_images``. This was done due to
|
||||
security enhancements in Fedora that break the ironic-conductor
|
||||
process as-architected.
|
||||
fixes:
|
||||
- |
|
||||
Addresses issues with setuptools on various distributions
|
||||
such as Centos 7.3 and Fedora 25 where the shipped version
|
||||
is too old to build the python packages.
|
||||
- |
|
||||
Changes the application of SELinux security policy from using
|
||||
the command line tools to leveraging the Ansible module which
|
||||
addresses issues with newer version of Ansible on Fedora.
|
||||
deprecates:
|
||||
- |
|
||||
Support for Fedora versions prior to Fedora Core 25, will be removed
|
||||
during the Rocky release cycle.
|
@ -5,3 +5,4 @@ pbr!=2.1.0,>=2.0.0 # Apache-2.0
|
||||
oslo.config>=5.1.0 # Apache-2.0
|
||||
oslo.log>=3.30.0 # Apache-2.0
|
||||
paramiko>=2.0.0 # LGPLv2.1+
|
||||
setuptools>=16.0,!=24.0.0,!=34.0.0,!=34.0.1,!=34.0.2,!=34.0.3,!=34.1.0,!=34.1.1,!=34.2.0,!=34.3.0,!=34.3.1,!=34.3.2,!=36.2.0 # PSF/ZPL
|
||||
|
@ -86,6 +86,9 @@ case ${ID,,} in
|
||||
)
|
||||
EXTRA_PKG_DEPS=()
|
||||
sudo yum updateinfo
|
||||
if $(grep -q Fedora /etc/redhat-release); then
|
||||
EXTRA_PKG_DEPS="python-dnf redhat-rpm-config"
|
||||
fi
|
||||
;;
|
||||
|
||||
*) echo "ERROR: Supported package manager not found. Supported: apt, dnf, yum, zypper"; exit 1;;
|
||||
|
@ -94,3 +94,11 @@
|
||||
post-run: playbooks/legacy/bifrost-integration-tinyipa-opensuse-423/post.yaml
|
||||
timeout: 3600
|
||||
nodeset: legacy-opensuse-423
|
||||
|
||||
- job:
|
||||
name: bifrost-integration-tinyipa-fedora26
|
||||
parent: bifrost-base
|
||||
run: playbooks/legacy/bifrost-integration-tinyipa/run.yaml
|
||||
post-run: playbooks/legacy/bifrost-integration-tinyipa/post.yaml
|
||||
timeout: 3600
|
||||
nodeset: legacy-fedora-26
|
||||
|
@ -19,6 +19,8 @@
|
||||
voting: false
|
||||
- bifrost-integration-tinyipa-centos-7:
|
||||
voting: false
|
||||
- bifrost-integration-tinyipa-fedora26:
|
||||
voting: false
|
||||
gate:
|
||||
jobs:
|
||||
- bifrost-integration-tinyipa
|
||||
|
Loading…
Reference in New Issue
Block a user