def test_all__no_input_data(self): tmpdir = tempfile.mkdtemp( dir=os.path.join(os.path.expanduser("~/"), "tmp")) self._submit_test_job() try: job_runner = nmpi_saga.JobRunner( dict(JOB_SERVICE_ADAPTOR="slurm://localhost", AUTH_USER="******", AUTH_TOKEN=HARDWARE_TOKEN, NMPI_HOST=NMPI_HOST, NMPI_API=NMPI_API, PLATFORM_NAME="nosetest_platform", VERIFY_SSL=VERIFY, WORKING_DIRECTORY=tmpdir, JOB_EXECUTABLE='/usr/bin/python', JOB_QUEUE='intel', DATA_DIRECTORY=tmpdir, DEFAULT_PYNN_BACKEND='nest')) except saga.NoSuccess: raise unittest.SkipTest("SLURM not available") saga_job = job_runner.next() self.assertEqual(saga_job.get_state(), saga.job.DONE) shutil.rmtree(tmpdir)
def test_get_code_tar(self): archive = os.path.join(self.tmp_src_dir, "testcode.tar.gz") with tarfile.open(archive, "w:gz") as tf: with open("run.py", "w") as fp: fp.write(simulation_test_script) tf.add("run.py") os.remove("run.py") job_runner = nmpi_saga.JobRunner(dict( JOB_SERVICE_ADAPTOR="fork://localhost", AUTH_USER="******", AUTH_TOKEN=HARDWARE_TOKEN, NMPI_HOST=NMPI_HOST, NMPI_API=NMPI_API, PLATFORM_NAME="nosetest_platform", VERIFY_SSL=VERIFY )) job = MockSagaJob("submitted", working_directory=self.tmp_run_dir) mock_nmpi_job = { "code": "file://{}".format(archive) } job_runner._get_code(mock_nmpi_job, job) self.assertEqual(os.listdir(self.tmp_run_dir), ["run.py", "testcode.tar.gz"]) with open(os.path.join(self.tmp_run_dir, "run.py")) as fp: self.assertEqual(fp.read(), simulation_test_script)
def setUp(self): try: self.job_runner = nmpi_saga.JobRunner( dict(JOB_SERVICE_ADAPTOR="slurm://localhost", AUTH_USER="******", AUTH_TOKEN=HARDWARE_TOKEN, NMPI_HOST=NMPI_HOST, NMPI_API=NMPI_API, PLATFORM_NAME="nosetest_platform", VERIFY_SSL=VERIFY)) except saga.NoSuccess: raise unittest.SkipTest("SLURM not available")
def setUp(self): self.user_client = nmpi_user.Client("testuser", token=TEST_TOKEN, job_service=ENTRYPOINT, verify=VERIFY) self.collab_id = TEST_COLLAB self.job_runner = nmpi_saga.JobRunner( dict(JOB_SERVICE_ADAPTOR="fork://localhost", AUTH_USER="******", AUTH_TOKEN=HARDWARE_TOKEN, NMPI_HOST=NMPI_HOST, NMPI_API=NMPI_API, PLATFORM_NAME="nosetest_platform", VERIFY_SSL=VERIFY))
def setUp(self): try: self.job_runner = nmpi_saga.JobRunner( dict(JOB_SERVICE_ADAPTOR="slurm://localhost", AUTH_USER="******", AUTH_TOKEN=HARDWARE_TOKEN, NMPI_HOST=NMPI_HOST, NMPI_API=NMPI_API, PLATFORM_NAME="nosetest_platform", VERIFY_SSL=VERIFY)) except saga.NoSuccess: raise unittest.SkipTest("SLURM not available") self.tmpdir = os.path.join( os.getenv("TMPDIR") or "/tmp/", "nmpi-saga-test") os.mkdir(self.tmpdir)
def setUp(self): try: self.job_runner = nmpi_saga.JobRunner( dict(JOB_SERVICE_ADAPTOR="slurm://localhost", AUTH_USER="******", AUTH_TOKEN=HARDWARE_TOKEN, NMPI_HOST=NMPI_HOST, NMPI_API=NMPI_API, PLATFORM_NAME="nosetest_platform", VERIFY_SSL=VERIFY)) except saga.NoSuccess: raise unittest.SkipTest("SLURM not available") self.user_client = nmpi_user.Client("testuser", token=TEST_TOKEN, job_service=ENTRYPOINT) self.collab_id = TEST_COLLAB
def test_get_code_zip(self): zipfile = os.path.join(self.tmp_src_dir, "testcode.zip") zf = ZipFile(zipfile, "w") zf.writestr("run.py", simulation_test_script) zf.close() job_runner = nmpi_saga.JobRunner( dict(JOB_SERVICE_ADAPTOR="fork://localhost", AUTH_USER="******", AUTH_TOKEN=HARDWARE_TOKEN, NMPI_HOST=NMPI_HOST, NMPI_API=NMPI_API, PLATFORM_NAME="nosetest_platform", VERIFY_SSL=VERIFY)) job = MockSagaJob("submitted", working_directory=self.tmp_run_dir) mock_nmpi_job = {"code": "file://{}".format(zipfile)} job_runner._get_code(mock_nmpi_job, job) self.assertEqual(os.listdir(self.tmp_run_dir), ["run.py", "testcode.zip"]) with open(os.path.join(self.tmp_run_dir, "run.py")) as fp: self.assertEqual(fp.read(), simulation_test_script)
def test_all__no_input_data(self): self._submit_test_job() try: job_runner = nmpi_saga.JobRunner( dict(JOB_SERVICE_ADAPTOR="slurm://localhost", AUTH_USER="******", AUTH_TOKEN=HARDWARE_TOKEN, NMPI_HOST=NMPI_HOST, NMPI_API=NMPI_API, PLATFORM_NAME="nosetest_platform", VERIFY_SSL=VERIFY, WORKING_DIRECTORY=self.tmpdir, JOB_EXECUTABLE='/usr/bin/python', JOB_QUEUE=os.getenv("NMPI_TEST_QUEUE") or "intel", DATA_DIRECTORY=self.tmpdir, DEFAULT_PYNN_BACKEND='nest')) except saga.NoSuccess: raise unittest.SkipTest("SLURM not available") saga_job = job_runner.next() self.assertEqual(saga_job.get_state(), saga.job.DONE)