Source code for acme.set_hostname_plugin

from linux.ubuntu2204 import Ubuntu2204Server

from firewheel.control.experiment_graph import AbstractPlugin


[docs] class Plugin(AbstractPlugin): """ACME plugin to set hostnames for all VMs"""
[docs] def run(self): """ Find all Ubuntu servers and try to assign a new hostname to them using our custom VM resource. """ for vm in self.g.get_vertices(): if vm.is_decorated_by(Ubuntu2204Server): try: hostname = vm.name.replace("building", "b", 1).replace( "host", "ubuntu", 1 ) except AttributeError: print(f"Found VM without a name: {vm}") continue vm.run_executable(-40, "set_hostname.py", hostname, vm_resource=True)