def __init__(self, config, host="localhost", port=0, log_requests=False, verbose_queue=False): SimpleXMLRPCServer.__init__(self, (host, port), allow_none=True, logRequests=log_requests) self._host = host self._verbose_queue = verbose_queue # https: server.socket = ssl.wrap_socket(srv.socket, ...) if isinstance(config, EnKFMain): self._config = config self._config_file = config.getUserConfigFile() else: if os.path.exists(config): self._config = EnKFMain(config) self._config_file = config else: raise IOError("The ert config file: %s does not exist" % config) self._session = Session() self.register_function(self.ertVersion) self.register_function(self.getTimeMap) self.register_function(self.isRunning) self.register_function(self.isInitializationCaseAvailable) self.register_function(self.startSimulationBatch) self.register_function(self.addSimulation) self.register_function(self.isRealizationFinished) self.register_function(self.didRealizationSucceed) self.register_function(self.didRealizationFail) self.register_function(self.getGenDataResult) self.register_function(self.getCustomKWResult) self.register_function(self.isCustomKWKey) self.register_function(self.isGenDataKey) self.register_function(self.prototypeStorage) self.register_function(self.storeGlobalData) self.register_function(self.storeSimulationData)
def do_load_config(self, config_file): if os.path.exists(config_file) and os.path.isfile(config_file): self.shellContext().setErt(EnKFMain(config_file)) ert_gui.configureErtNotifier(self.shellContext().ert(), config_file) else: self.lastCommandFailed("Config file '%s' not found!\n" % config_file)
def main(argv): app = QApplication( argv) #Early so that QT is initialized before other imports app.setWindowIcon(util.resourceIcon("application/window_icon_cutout")) if len(argv) == 1: sys.stderr.write("Missing configuration file") sys.exit(1) config_file = argv[1] strict = True if not os.path.exists(config_file): print("Can not run without a configuration file.") sys.exit(1) if os.path.isdir(config_file): print("The specified configuration file is a directory!") sys.exit(1) splash = ErtSplash() splash.version = "Version %s" % Version.getVersion() splash.timestamp = Version.getBuildTime() splash.show() splash.repaint() now = time.time() ert = EnKFMain(config_file, strict=strict, verbose=False) ErtConnector.setErt(ert) window = PlotWindow(ert, None) sleep_time = 2 - (time.time() - now) if sleep_time > 0: time.sleep(sleep_time) window.show() splash.finish(window) window.activateWindow() window.raise_() finished_code = app.exec_() ert.free() sys.exit(finished_code)
def main(argv): app = QApplication(argv) #Early so that QT is initialized before other imports app.setWindowIcon(util.resourceIcon("application/window_icon_cutout")) if len(argv) == 1: config_file = QFileDialog.getOpenFileName(None, "Open Configuration File") config_file = str(config_file) if len(config_file) == 0: print("-----------------------------------------------------------------") print("-- You must supply the name of configuration file as the first --") print("-- commandline argument: --") print("-- --") print("-- bash% gert <config_file> --") print("-- --") print("-- If the configuration file does not exist, gert will create --") print("-- create a new configuration file. --") print("-----------------------------------------------------------------") sys.exit(1) else: config_file = argv[1] help_center = HelpCenter("ERT") help_center.setHelpLinkPrefix(os.getenv("ERT_SHARE_PATH") + "/gui/help/") help_center.setHelpMessageLink("welcome_to_ert") strict = True verbose = False verbose_var = os.getenv("ERT_VERBOSE", "False") lower_verbose_var = verbose_var.lower() if lower_verbose_var == "true": verbose = True if not os.path.exists(config_file): print("Trying to start new config") new_configuration_dialog = NewConfigurationDialog(config_file) success = new_configuration_dialog.exec_() if not success: print("Can not run without a configuration file.") sys.exit(1) else: config_file = new_configuration_dialog.getConfigurationPath() first_case_name = new_configuration_dialog.getCaseName() dbase_type = new_configuration_dialog.getDBaseType() num_realizations = new_configuration_dialog.getNumberOfRealizations() storage_path = new_configuration_dialog.getStoragePath() EnKFMain.createNewConfig(config_file, storage_path, first_case_name, dbase_type, num_realizations) strict = False if os.path.isdir(config_file): print("The specified configuration file is a directory!") sys.exit(1) splash = ErtSplash() splash.version = "Version %s" % Version.getVersion() splash.timestamp = Version.getBuildTime() splash.show() splash.repaint() now = time.time() ert = Ert(EnKFMain(config_file, strict=strict, verbose=verbose)) ErtConnector.setErt(ert.ert()) window = GertMainWindow() window.setWidget(SimulationPanel()) plugin_handler = PluginHandler(ert.ert(), ert.ert().getWorkflowList().getPluginJobs(), window) help_tool = HelpTool("ERT", window) window.addDock("Configuration Summary", SummaryPanel(), area=Qt.BottomDockWidgetArea) window.addTool(IdeTool(os.path.basename(config_file), ert.reloadERT, help_tool)) window.addTool(PlotTool(ert.ert())) window.addTool(ExportTool()) window.addTool(WorkflowsTool()) window.addTool(ManageCasesTool()) window.addTool(PluginsTool(plugin_handler)) window.addTool(LoadResultsTool()) window.addTool(help_tool) sleep_time = 2 - (time.time() - now) if sleep_time > 0: time.sleep(sleep_time) window.show() splash.finish(window) window.activateWindow() window.raise_() finished_code = app.exec_() ert.ert().free() sys.exit(finished_code)
def open(self, config_file): self.config_file = config_file self.ert_handle = EnKFMain(config_file) self.logger.info("Have connect ert handle to:%s", config_file)
#!/usr/bin/env python import sys import time from ert.enkf import EnKFMain # This will instantiate the EnkFMain object and create a handle to # "everything" ert related for this instance. ert = EnKFMain(sys.argv[1]) site_config = ert.siteConfig() jobs = site_config.get_installed_jobs() for job in jobs: print job.name() print " config : %s" % job.get_config_file() print " executable: %s" % job.get_executable() print