Skip to content

Commit 85fe753

Browse files
Merge pull request #3208 from antgonza/slurm
mv to slurm
2 parents 05f046e + 04c350b commit 85fe753

File tree

14 files changed

+165
-193
lines changed

14 files changed

+165
-193
lines changed

.github/workflows/qiita-ci.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,8 @@ jobs:
184184
conda activate qiita
185185
export QIITA_SERVER_CERT=`pwd`/qiita_core/support_files/server.crt
186186
export QIITA_CONFIG_FP=`pwd`/qiita_core/support_files/config_test.cfg
187+
# for testing we only need to have this set, not actually exist
188+
export QIITA_JOB_SCHEDULER_EPILOGUE=`/path/to/epilogue/file`
187189
export REDBIOM_HOST="http://localhost:7379"
188190
189191
nosetests $COVER_PACKAGE --with-doctest --with-coverage --with-timer -v --cover-package=${COVER_PACKAGE// / --cover-package=} -e 'test_submit_EBI_parse_EBI_reply_failure' -e 'test_full_submission'

qiita_core/configuration_manager.py

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,11 @@ class ConfigurationManager(object):
4242
Max upload size
4343
valid_upload_extension : str
4444
The extensions that are valid to upload, comma separated
45-
trq_owner : str
46-
Email address of submitter of Torque jobs
47-
trq_poll_val : int
48-
Interval (in seconds) to wait between calls to Torque's qstat program
49-
trq_dependency_q_cnt : int
45+
job_scheduler_owner : str
46+
Email address of submitter of jobs
47+
job_scheduler_poll_val : int
48+
Interval (in seconds) to wait between calls to job_scheduler program
49+
job_scheduler_dependency_q_cnt : int
5050
Hard upper-limit on the number of an artifact's concurrent validation
5151
processes.
5252
user : str
@@ -145,7 +145,7 @@ def __init__(self):
145145

146146
self._get_main(config)
147147
self._get_smtp(config)
148-
self._get_torque(config)
148+
self._get_job_scheduler(config)
149149
self._get_postgres(config)
150150
self._get_redis(config)
151151
self._get_ebi(config)
@@ -234,22 +234,22 @@ def _get_main(self, config):
234234
self.key_file = join(install_dir, 'qiita_core', 'support_files',
235235
'server.key')
236236

237-
def _get_torque(self, config):
238-
"""Get the configuration of the torque section"""
239-
self.trq_owner = config.get('torque', 'TORQUE_JOB_OWNER')
240-
self.trq_poll_val = int(config.get('torque', 'TORQUE_POLLING_VALUE'))
241-
self.trq_dependency_q_cnt = config.get('torque',
242-
'TORQUE_PROCESSING_QUEUE_COUNT')
243-
self.trq_dependency_q_cnt = int(self.trq_dependency_q_cnt)
244-
245-
if not self.trq_owner:
246-
self.trq_owner = None
247-
248-
if not self.trq_poll_val:
249-
self.trq_poll_val = None
250-
251-
if not self.trq_dependency_q_cnt:
252-
self.trq_dependency_q_cnt = None
237+
def _get_job_scheduler(self, config):
238+
"""Get the configuration of the job_scheduler section"""
239+
self.job_scheduler_owner = config.get(
240+
'job_scheduler', 'JOB_SCHEDULER_JOB_OWNER', fallback=None)
241+
self.job_scheduler_poll_val = config.get(
242+
'job_scheduler', 'JOB_SCHEDULER_POLLING_VALUE', fallback=None)
243+
self.job_scheduler_dependency_q_cnt = config.get(
244+
'job_scheduler', 'JOB_SCHEDULER_PROCESSING_QUEUE_COUNT',
245+
fallback=None)
246+
247+
if self.job_scheduler_poll_val is not None:
248+
self.job_scheduler_poll_val = int(self.job_scheduler_poll_val)
249+
250+
if self.job_scheduler_dependency_q_cnt is not None:
251+
self.job_scheduler_dependency_q_cnt = int(
252+
self.job_scheduler_dependency_q_cnt)
253253

254254
def _get_postgres(self, config):
255255
"""Get the configuration of the postgres section"""

qiita_core/support_files/config_test.cfg

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -123,16 +123,16 @@ PASSWORD = postgres
123123
# The postgres password for the admin_user
124124
ADMIN_PASSWORD = postgres
125125

126-
# ----------------------------- Torque settings -----------------------------
127-
[torque]
128-
# The email address of the submitter of Torque jobs
129-
TORQUE_JOB_OWNER = torque_user@somewhere.org
126+
# ----------------------------- Job Scheduler Settings -----------------------------
127+
[job_scheduler]
128+
# The email address of the submitter of jobs
129+
JOB_SCHEDULER_JOB_OWNER = user@somewhere.org
130130

131-
# The number of seconds to wait between successive qstat calls
132-
TORQUE_POLLING_VALUE = 15
131+
# The number of seconds to wait between successive calls
132+
JOB_SCHEDULER__POLLING_VALUE = 15
133133

134134
# Hard upper-limit on concurrently running validator jobs
135-
TORQUE_PROCESSING_QUEUE_COUNT = 2
135+
JOB_SCHEDULER_PROCESSING_QUEUE_COUNT = 2
136136

137137
# ----------------------------- EBI settings -----------------------------
138138
[ebi]

qiita_core/tests/test_configuration_manager.py

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,10 @@ def test_init(self):
5959
self.assertEqual(obs.cookie_secret, "SECRET")
6060
self.assertEqual(obs.key_file, "/tmp/server.key")
6161

62-
# Torque section
63-
self.assertEqual(obs.trq_owner, "torque_user@somewhere.org")
64-
self.assertEqual(obs.trq_poll_val, 15)
65-
self.assertEqual(obs.trq_dependency_q_cnt, 2)
62+
# job_scheduler section
63+
self.assertEqual(obs.job_scheduler_owner, "user@somewhere.org")
64+
self.assertEqual(obs.job_scheduler_poll_val, 15)
65+
self.assertEqual(obs.job_scheduler_dependency_q_cnt, 2)
6666

6767
# Postgres section
6868
self.assertEqual(obs.user, "postgres")
@@ -180,13 +180,13 @@ def test_get_main(self):
180180

181181
self.assertEqual(obs.qiita_env, "")
182182

183-
def test_get_torque(self):
183+
def test_get_job_scheduler(self):
184184
obs = ConfigurationManager()
185185

186-
conf_setter = partial(self.conf.set, 'torque')
187-
conf_setter('TORQUE_JOB_OWNER', '')
188-
obs._get_torque(self.conf)
189-
self.assertIsNone(obs.trq_owner)
186+
conf_setter = partial(self.conf.set, 'job_scheduler')
187+
conf_setter('JOB_SCHEDULER_JOB_OWNER', '')
188+
obs._get_job_scheduler(self.conf)
189+
self.assertEqual('', obs.job_scheduler_owner)
190190

191191
def test_get_postgres(self):
192192
obs = ConfigurationManager()
@@ -329,16 +329,16 @@ def test_get_portal(self):
329329
# The postgres password for the admin_user
330330
ADMIN_PASSWORD = thishastobesecure
331331
332-
# ----------------------------- Torque settings -----------------------------
333-
[torque]
334-
# The email address of the submitter of Torque jobs
335-
TORQUE_JOB_OWNER = torque_user@somewhere.org
332+
# ------------------------- job_scheduler settings -------------------------
333+
[job_scheduler]
334+
# The email address of the submitter of jobs
335+
JOB_SCHEDULER_JOB_OWNER = user@somewhere.org
336336
337-
# The number of seconds to wait between successive qstat calls
338-
TORQUE_POLLING_VALUE = 15
337+
# The number of seconds to wait between successive calls
338+
JOB_SCHEDULER_POLLING_VALUE = 15
339339
340340
# Hard upper-limit on concurrently running validator jobs
341-
TORQUE_PROCESSING_QUEUE_COUNT = 2
341+
JOB_SCHEDULER_PROCESSING_QUEUE_COUNT = 2
342342
343343
# ----------------------------- EBI settings -----------------------------
344344
[ebi]

qiita_db/environment_manager.py

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -203,16 +203,12 @@ def make_environment(load_ontologies, download_reference, add_demo_user):
203203

204204
# Insert the settings values to the database
205205
sql = """INSERT INTO settings
206-
(test, base_data_dir, base_work_dir, trq_owner,
207-
trq_poll_val, trq_dependency_q_cnt)
208-
VALUES (%s, %s, %s, %s, %s, %s)"""
206+
(test, base_data_dir, base_work_dir)
207+
VALUES (%s, %s, %s)"""
209208
qdb.sql_connection.TRN.add(
210209
sql, [test,
211210
qiita_config.base_data_dir,
212-
qiita_config.working_dir,
213-
qiita_config.trq_owner,
214-
qiita_config.trq_poll_val,
215-
qiita_config.trq_dependency_q_cnt])
211+
qiita_config.working_dir])
216212
qdb.sql_connection.TRN.execute()
217213
create_layout(test=test, verbose=verbose)
218214

0 commit comments

Comments
 (0)