def __init__(self, infile=None, files=None, machine=None): """ initialize an object if a filename is provided it will be used, otherwise if a files object is provided it will be used otherwise create a files object from default values """ self.machine_node = None self.machine = None self.machines_dir = None if infile is None: if files is None: files = Files() infile = files.get_value("MACHINES_SPEC_FILE", resolved=False) infile = files.get_resolved_value(infile) self.machines_dir = os.path.dirname(infile) GenericXML.__init__(self, infile) # Append the contents of $HOME/.cime/config_machines.xml if it exists # This could cause problems if node matchs are repeated when only one is expected local_infile = os.path.join(os.environ.get("HOME"), ".cime", "config_machines.xml") logger.debug("Infile: %s", local_infile) if os.path.exists(local_infile): GenericXML.read(self, local_infile) if machine is None: machine = self.probe_machine_name() expect(machine is not None, "Could not initialize machine object from %s or %s" % (infile, local_infile)) self.set_machine(machine)
def __init__(self, infile=None, files=None, machine=None): """ initialize an object if a filename is provided it will be used, otherwise if a files object is provided it will be used otherwise create a files object from default values """ self.machine_node = None self.machine = None self.machines_dir = None if infile is None: if files is None: files = Files() infile = files.get_value("MACHINES_SPEC_FILE", resolved=False) infile = files.get_resolved_value(infile) self.machines_dir = os.path.dirname(infile) GenericXML.__init__(self, infile) # Append the contents of $HOME/.cime/config_machines.xml if it exists # This could cause problems if node matchs are repeated when only one is expected infile = os.path.join(os.environ.get("HOME"), ".cime", "config_machines.xml") logger.debug("Infile: %s", infile) if os.path.exists(infile): GenericXML.read(self, infile) if machine is None: machine = self.probe_machine_name() expect(machine is not None, "Could not initialize machine object") self.set_machine(machine)
def __init__(self, machine, files=None, infile=None): """ initialize an object """ if (infile is None): if files is None: files = Files() infile = files.get_value("LTARCHIVE_SPEC_FILE", resolved=False) infile = files.get_resolved_value(infile) GenericXML.__init__(self, infile) self.machine = machine