Skip to content
Snippets Groups Projects
Commit c1191752 authored by Loraine Guéguen's avatar Loraine Guéguen
Browse files

add check_param_not_empty

parent 4114dc00
Branches
Tags
2 merge requests!24Run wf,!18Release v2.1.0
...@@ -49,14 +49,33 @@ class StrainWorkflowParam: ...@@ -49,14 +49,33 @@ class StrainWorkflowParam:
self.email = email self.email = email
self.password = password self.password = password
def check_param_for_workflow_load_fasta_gff_jbrowse(self, param): def check_param(self, params):
# Look for empty parameters values, throw a critical error if a parameter value is invalid if not utilities.no_empty_items(params):
if param is None or param == "":
logging.critical( logging.critical(
"Empty parameter value found for organism {0} (parameter: {1}, parameter value: {2})".format( "One empty workflow parameter found for organism {0}: {1})".format(org_full_name, params))
org_full_name, param_name, param_value))
sys.exit() sys.exit()
def check_param_for_workflow_load_fasta_gff_jbrowse(self, params):
params = [self.genus_species, self.strain_sex, self.genus, self.species, self.sex, self.strain, self.full_name,
self.species_folder_name, self.org_id,
self.genome_analysis_id, self.ogs_analysis_id, self.hda_ids, self.history_id,
self.instance, self.instance_url, self.email, self.password]
self.check_param(params)
def check_param_for_workflow_blast(self, params):
params = [self.genus_species, self.strain_sex, self.genus, self.species, self.sex, self.strain, self.full_name,
self.species_folder_name, self.org_id,
self.blastp_analysis_id, self.hda_ids, self.history_id,
self.instance, self.instance_url, self.email, self.password]
self.check_param(params)
def check_param_for_workflow_interpro(self, params):
params = [self.genus_species, self.strain_sex, self.genus, self.species, self.sex, self.strain, self.full_name,
self.species_folder_name, self.org_id,
self.interpro_analysis_id, self.hda_ids, self.history_id,
self.instance, self.instance_url, self.email, self.password]
self.check_param(params)
class RunWorkflow(speciesData.SpeciesData): class RunWorkflow(speciesData.SpeciesData):
""" """
...@@ -796,6 +815,7 @@ def get_sp_workflow_param(sp_dict, main_dir, config, workflow_type): ...@@ -796,6 +815,7 @@ def get_sp_workflow_param(sp_dict, main_dir, config, workflow_type):
email=config[constants.CONF_GALAXY_DEFAULT_ADMIN_EMAIL], email=config[constants.CONF_GALAXY_DEFAULT_ADMIN_EMAIL],
password=config[constants.CONF_GALAXY_DEFAULT_ADMIN_PASSWORD] password=config[constants.CONF_GALAXY_DEFAULT_ADMIN_PASSWORD]
) )
sp_wf_param.check_param_for_workflow_load_fasta_gff_jbrowse()
if workflow_type == "blast": if workflow_type == "blast":
...@@ -824,7 +844,7 @@ def get_sp_workflow_param(sp_dict, main_dir, config, workflow_type): ...@@ -824,7 +844,7 @@ def get_sp_workflow_param(sp_dict, main_dir, config, workflow_type):
email=config[constants.CONF_GALAXY_DEFAULT_ADMIN_EMAIL], email=config[constants.CONF_GALAXY_DEFAULT_ADMIN_EMAIL],
password=config[constants.CONF_GALAXY_DEFAULT_ADMIN_PASSWORD] password=config[constants.CONF_GALAXY_DEFAULT_ADMIN_PASSWORD]
) )
sp_wf_param.check_param_for_workflow_blast()
if workflow_type == "interpro": if workflow_type == "interpro":
...@@ -853,7 +873,7 @@ def get_sp_workflow_param(sp_dict, main_dir, config, workflow_type): ...@@ -853,7 +873,7 @@ def get_sp_workflow_param(sp_dict, main_dir, config, workflow_type):
email=config[constants.CONF_GALAXY_DEFAULT_ADMIN_EMAIL], email=config[constants.CONF_GALAXY_DEFAULT_ADMIN_EMAIL],
password=config[constants.CONF_GALAXY_DEFAULT_ADMIN_PASSWORD] password=config[constants.CONF_GALAXY_DEFAULT_ADMIN_PASSWORD]
) )
sp_wf_param.check_param_for_workflow_interpro()
return sp_wf_param return sp_wf_param
...@@ -1019,34 +1039,10 @@ if __name__ == "__main__": ...@@ -1019,34 +1039,10 @@ if __name__ == "__main__":
org_org_id = sp_workflow_param.org_id org_org_id = sp_workflow_param.org_id
org_genome_analysis_id = sp_workflow_param.genome_analysis_id org_genome_analysis_id = sp_workflow_param.genome_analysis_id
org_ogs_analysis_id = sp_workflow_param.ogs_analysis_id org_ogs_analysis_id = sp_workflow_param.ogs_analysis_id
org_genome_hda_id = org_dict["hda_ids"]["genome_hda_id"] org_genome_hda_id = sp_workflow_param.hda_ids["genome_hda_id"]
org_transcripts_hda_id = org_dict["hda_ids"]["transcripts_hda_id"] org_transcripts_hda_id = sp_workflow_param.hda_ids["transcripts_hda_id"]
org_proteins_hda_id = org_dict["hda_ids"]["proteins_hda_id"] org_proteins_hda_id = sp_workflow_param.hda_ids["proteins_hda_id"]
org_gff_hda_id = org_dict["hda_ids"]["gff_hda_id"] org_gff_hda_id = sp_workflow_param.hda_ids["gff_hda_id"]
# Store these values into a dict for parameters logging/validation
org_parameters_dict = {
"org_genus": org_genus,
"org_species": org_species,
"org_genus_species": org_genus_species,
"org_species_folder_name": org_species_folder_name,
"org_full_name": org_full_name,
"org_strain": org_strain,
"org_sex": org_sex,
"org_org_id": org_org_id,
"org_genome_analysis_id": org_genome_analysis_id,
"org_ogs_analysis_id": org_ogs_analysis_id,
"org_genome_hda_id": org_genome_hda_id,
"org_transcripts_hda_id": org_transcripts_hda_id,
"org_proteins_hda_id": org_proteins_hda_id,
"org_gff_hda_id": org_gff_hda_id,
}
# Look for empty parameters values, throw a critical error if a parameter value is invalid
for param_name, param_value in org_parameters_dict.items():
if param_value is None or param_value == "":
logging.critical("Empty parameter value found for organism {0} (parameter: {1}, parameter value: {2})".format(org_full_name, param_name, param_value))
sys.exit()
# Set the workflow parameters (individual tools runtime parameters in the workflow) # Set the workflow parameters (individual tools runtime parameters in the workflow)
workflow_parameters = {} workflow_parameters = {}
......
...@@ -76,6 +76,13 @@ def filter_empty_not_empty_items(li): ...@@ -76,6 +76,13 @@ def filter_empty_not_empty_items(li):
filtered_dict["not_empty"].append(i) filtered_dict["not_empty"].append(i)
return filtered_dict return filtered_dict
def no_empty_items(li):
empty = True
for i in li:
if i is None or i == "":
empty = False
return empty
def check_galaxy_state(network_name, script_dir): def check_galaxy_state(network_name, script_dir):
""" """
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment