sushy_emulator
This role installs, configures and tests the deployment of the Sushi Emulator service.
Sushi Emulator is a virtual Redfish BMC, this role supports both the OpenStack and Libvirt driver.
Baremetal instances must be configured prior to running this role, for the Libvirt driver, the libvirt_manager role can be used.
This role supports installing via a Podman pod onto the controller node or a pod in OCP or CRC.
Privilege escalation
Required to installed required packages.
Parameters
cifmw_sushy_emulator_basedir: (String) Base directory. Defaults tocifmw_basedir, which defaults to{{ ansible_user_dir ~ '/ci-framework-data' }}cifmw_sushy_emulator_container_name: (String) Name of Podman container created. Defaults tocifmw-sushy_emulatorcifmw_sushy_emulator_driver: (String) Select betweenopenstackandlibvirtsushy emulator driver. Defaults tolibvirtcifmw_sushy_emulator_driver_openstack_client_config_file: (String) Path to OpenStack config file, used by OpenStack Sushi Emulator driver. Defaults to/etc/openstack/clouds.yamlcifmw_sushy_emulator_driver_openstack_cloud: (String) Cloud key reference in OpenStack config file. Defaults toNonecifmw_sushy_emulator_hypervisor_target(String) Hostname of the Libvirt hypervisor to connect to.cifmw_sushy_emulator_hypervisor_address(String) Address used to connect to hypervisor, optional override forcifmw_sushy_emulator_hypervisor_targetwhen specific address is required.cifmw_sushy_emulator_install_type: (String) Install type can either beocporpodmanand dictates where Sushi Emulator will be installed. Defaults toocpcifmw_sushy_emulator_image: (String) Container image used when deploying Sushi Emulator container and pod. Defaults toquay.io/metal3-io/sushy-tools:latestcifmw_sushy_emulator_libvirt_uri: (String) Internal URI to access qemu daemon. Defaults toqemu+ssh://{{ cifmw_sushy_emulator_libvirt_user }}@{{ cifmw_sushy_emulator_hypervisor_address | default(cifmw_sushy_emulator_hypervisor_target) }}/system?no_tty=1cifmw_sushy_emulator_libvirt_user: (String) Username used by Sushi Emulator to connect to Libvirt socket. Defaults tozuulcifmw_sushy_emulator_listen_ip: (String) IP address Sushy Emulator listens on. Defaults to0.0.0.0cifmw_sushy_emulator_namespace: (String) Namespace Sushi Emulator is deployed into when using theocpinstall method. Defaults tosushy-emulatorcifmw_sushy_emulator_parameters_file: (string) Path of the file which contains (v)bmc parameters. Defaults tocifmw_sushy_emulator_basedir + parameters + baremetal-info.ymlcifmw_sushy_emulator_redfish_username: (String) Redfish username. Defaults to{{ cifmw_redfish_username | default('admin') }}cifmw_sushy_emulator_redfish_password: (String) Redfish password. Defaults to{{ cifmw_redfish_password | default('password') }}cifmw_sushy_emulator_resource_directory: (String) Path where resource files will be written. Defaults to"{{ (ansible_user_dir, 'ci-framework-data', 'artifacts', 'sushy_emulator') | path_join }}"cifmw_sushy_emulator_sshkey_path: (String) Path of SSH key used by sushy emulator to talk to libvirt socket. Defaults to"{{ ansible_user_dir }}/.ssh/sushy_emulator-key"cifmw_sushy_emulator_sshkey_type: (String) Type of SSH keypair. Defaults to{{ cifmw_ssh_keytype | default('ecdsa') }}.cifmw_sushy_emulator_sshkey_size: (Integer) Size of the SSH keypair. Defaults to{{ cifmw_ssh_keysize | default(521) }}.cifmw_sushy_emulator_vm_prefix_filter: (String) Prefix string used to filter instances created for baremetal use. Defaults to.*cifmw_sushy_emulator_connection_name: (String) Name to use to access sushy_emulator. Defaults tolocalhost.cifmw_sushy_emulator_uri: (String) URI to access sushy_emulator. Defaults tohttp://{{ cifmw_sushy_emulator_connection_name }}:8000.
Examples
- hosts: all
vars:
cifmw_sushy_emulator_hypervisor_target: "{{ cifmw_target_host | default('localhost') }}"
cifmw_sushy_emulator_install_type: podman
cifmw_sushy_emulator_hypervisor_address: "{{ network_bridge_info['cifmw-public'] }}"
cifmw_sushy_emulator_vm_prefix_filter: cifmw-compute
tasks:
- name: Deploy and configure sushy-emulator
ansible.builtin.import_role:
name: 'sushy_emulator'