queue_driver_type * queue_driver_alloc_RSH(const char * rsh_cmd, const hash_type * rsh_hostlist) { queue_driver_type * driver = queue_driver_alloc(RSH_DRIVER); queue_driver_set_option(driver, RSH_HOSTLIST, rsh_hostlist); queue_driver_set_option(driver, RSH_CMD, rsh_cmd); return driver; }
queue_driver_type * queue_driver_alloc_LSF(const char * queue_name, const char * resource_request, const char * remote_lsf_server) { queue_driver_type * driver = queue_driver_alloc(LSF_DRIVER); queue_driver_set_option(driver, LSF_QUEUE, queue_name); queue_driver_set_option(driver, LSF_RESOURCE, resource_request); queue_driver_set_option(driver, LSF_SERVER, remote_lsf_server); return driver; }
void set_option_max_running_max_running_value_set() { queue_driver_type * driver_torque = queue_driver_alloc(TORQUE_DRIVER); test_assert_true(queue_driver_set_option(driver_torque, MAX_RUNNING, "42")); test_assert_string_equal("42", queue_driver_get_option(driver_torque, MAX_RUNNING)); queue_driver_free(driver_torque); queue_driver_type * driver_lsf = queue_driver_alloc(LSF_DRIVER); test_assert_true(queue_driver_set_option(driver_lsf, MAX_RUNNING, "72")); test_assert_string_equal("72", queue_driver_get_option(driver_lsf, MAX_RUNNING)); queue_driver_free(driver_lsf); }
void site_config_set_lsf_queue( site_config_type * site_config , const char * lsf_queue) { queue_driver_type * lsf_driver = site_config_get_queue_driver( site_config , LSF_DRIVER_NAME); if (!site_config->user_mode) site_config->lsf_queue_name_site = util_realloc_string_copy( site_config->lsf_queue_name_site , lsf_queue); queue_driver_set_option( lsf_driver, LSF_QUEUE , lsf_queue ); }
static void site_config_set_queue_option( site_config_type * site_config , const char * driver_name , const char * option_key , const char * option_value) { if (site_config_has_queue_driver( site_config , driver_name )) { queue_driver_type * driver = site_config_get_queue_driver( site_config , driver_name ); if (!queue_driver_set_option( driver , option_key , option_value)) fprintf(stderr,"** Warning: Option:%s not recognized by driver:%s- ignored \n", option_key , driver_name ); } else fprintf(stderr,"** Warning: Driver:%s not recognized - ignored \n", driver_name ); }
void site_config_set_lsf_request( site_config_type * site_config , const char * lsf_request) { queue_driver_type * lsf_driver = site_config_get_queue_driver( site_config , LSF_DRIVER_NAME); queue_driver_set_option( lsf_driver, LSF_RESOURCE , lsf_request ); if (!site_config->user_mode) site_config->lsf_request_site = util_realloc_string_copy( site_config->lsf_request_site , lsf_request); }
void site_config_set_lsf_server( site_config_type * site_config , const char * lsf_server) { queue_driver_type * lsf_driver = site_config_get_queue_driver( site_config , LSF_DRIVER_NAME); queue_driver_set_option( lsf_driver, LSF_SERVER , lsf_server ); }
void site_config_set_rsh_command( site_config_type * site_config , const char * rsh_command) { queue_driver_type * rsh_driver = site_config_get_queue_driver( site_config , RSH_DRIVER_NAME); queue_driver_set_option( rsh_driver , RSH_CMD , rsh_command ); }
void site_config_add_rsh_host_from_string( site_config_type * site_config , const char * host_string) { queue_driver_type * rsh_driver = site_config_get_queue_driver( site_config , RSH_DRIVER_NAME); queue_driver_set_option( rsh_driver , RSH_HOST , host_string ); }
void site_config_clear_rsh_host_list( site_config_type * site_config ) { queue_driver_type * rsh_driver = site_config_get_queue_driver( site_config , RSH_DRIVER_NAME); queue_driver_set_option( rsh_driver , RSH_CLEAR_HOSTLIST , NULL ); }
void set_option_valid_on_specific_driver_returns_true() { queue_driver_type * driver_torque = queue_driver_alloc(TORQUE_DRIVER); test_assert_true(queue_driver_set_option(driver_torque, TORQUE_NUM_CPUS_PER_NODE, "33")); test_assert_string_equal("33", queue_driver_get_option(driver_torque, TORQUE_NUM_CPUS_PER_NODE)); queue_driver_free(driver_torque); }
void set_option_invalid_value_returns_false() { queue_driver_type * driver_torque = queue_driver_alloc(TORQUE_DRIVER); test_assert_false(queue_driver_set_option(driver_torque, "MAX_RUNNING", "2a")); queue_driver_free(driver_torque); }
void job_queue_set_max_running_option(queue_driver_type * driver, int max_running) { char * max_running_string = util_alloc_sprintf("%d", max_running); queue_driver_set_option(driver, MAX_RUNNING, max_running_string); free(max_running_string); }