本文整理汇总了Python中qonos.common.timeutils.set_time_override函数的典型用法代码示例。如果您正苦于以下问题:Python set_time_override函数的具体用法?Python set_time_override怎么用?Python set_time_override使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了set_time_override函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_process_job_should_succeed_after_multiple_tries
def test_process_job_should_succeed_after_multiple_tries(self):
timeutils.set_time_override()
self.nova_client.servers.create_image(mox.IsA(str),
mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('QUEUED'))
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('SAVING'))
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('SAVING'))
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
self.nova_client.servers.get(mox.IsA(str)).AndReturn(
MockServer())
self.worker.update_job(fakes.JOB_ID, 'PROCESSING',
timeout=mox.IsA(datetime.datetime),
error_message=None)
self.worker.update_job(fakes.JOB_ID, 'DONE', timeout=None,
error_message=None)
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(fakes.JOB['job'])
self.mox.VerifyAll()
示例2: test_doesnt_delete_images_from_another_instance
def test_doesnt_delete_images_from_another_instance(self):
timeutils.set_time_override()
instance_id = fakes.JOB['job']['metadata']['instance_id']
self.nova_client.servers.create_image(mox.IsA(str),
mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
mock_server = MockServer(instance_id=instance_id, retention=3)
self.nova_client.servers.get(mox.IsA(str)).AndReturn(mock_server)
image_list = self._create_images_list(mock_server.id, 5)
to_delete = image_list[3:]
image_list.extend(self._create_images_list(
uuidutils.generate_uuid(), 3))
self.nova_client.images.list(detailed=True).AndReturn(image_list)
# The image list happens to be in descending created order
self.nova_client.images.delete(to_delete[0].id)
self.nova_client.images.delete(to_delete[1].id)
self.worker.update_job(fakes.JOB_ID, 'PROCESSING',
timeout=mox.IsA(datetime.datetime),
error_message=None)
self.worker.update_job(fakes.JOB_ID, 'DONE', timeout=None,
error_message=None)
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(fakes.JOB['job'])
self.mox.VerifyAll()
示例3: test_schedule_update_remove_metadata
def test_schedule_update_remove_metadata(self):
fixture = {
'id': str(uuid.uuid4()),
'tenant': str(uuid.uuid4()),
'action': 'snapshot',
'minute': 30,
'hour': 2,
'schedule_metadata': [
{
'key': 'instance_id',
'value': 'my_instance',
},
],
}
schedule = self.db_api.schedule_create(fixture)
fixture = {
'schedule_metadata': [],
}
timeutils.set_time_override()
timeutils.advance_time_seconds(2)
updated_schedule = self.db_api.schedule_update(schedule['id'], fixture)
timeutils.clear_time_override()
self.assertTrue(uuidutils.is_uuid_like(schedule['id']))
self.assertEqual(updated_schedule['tenant'], schedule['tenant'])
self.assertEqual(updated_schedule['action'], schedule['action'])
self.assertEqual(updated_schedule['minute'], schedule['minute'])
self.assertEqual(updated_schedule['hour'], schedule['hour'])
metadata = updated_schedule['schedule_metadata']
self.assertEqual(len(metadata), 0)
# updated child metadata collection doesn't update the parent schedule
self.assertEqual(updated_schedule['updated_at'],
schedule['updated_at'])
示例4: test_doesnt_delete_images_from_another_instance
def test_doesnt_delete_images_from_another_instance(self):
timeutils.set_time_override()
instance_id = self.job["metadata"]["instance_id"]
self.nova_client.servers.get(mox.IsA(str)).AndReturn(MockServer())
self.nova_client.servers.create_image(mox.IsA(str), mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(MockImageStatus("ACTIVE"))
mock_retention = MockRetention(3)
self.nova_client.rax_scheduled_images_python_novaclient_ext.get(mox.IsA(str)).AndReturn(mock_retention)
mock_server = MockServer(instance_id=instance_id)
image_list = self._create_images_list(mock_server.id, 5)
to_delete = image_list[3:]
image_list.extend(self._create_images_list(uuidutils.generate_uuid(), 3))
self.nova_client.images.list(detailed=True).AndReturn(image_list)
# The image list happens to be in descending created order
self.nova_client.images.delete(to_delete[0].id)
self.nova_client.images.delete(to_delete[1].id)
self._simple_prepare_worker_mock()
self.mox.StubOutWithMock(utils, "generate_notification")
utils.generate_notification(None, "qonos.job.run.start", mox.IsA(dict), mox.IsA(str))
utils.generate_notification(None, "qonos.job.run.end", mox.IsA(dict), mox.IsA(str))
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例5: test_deletes_images_more_than_retention
def test_deletes_images_more_than_retention(self):
timeutils.set_time_override()
instance_id = self.job["metadata"]["instance_id"]
self.nova_client.servers.get(mox.IsA(str)).AndReturn(MockServer())
self.nova_client.servers.create_image(mox.IsA(str), mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(MockImageStatus("ACTIVE"))
mock_retention = MockRetention(3)
self.nova_client.rax_scheduled_images_python_novaclient_ext.get(mox.IsA(str)).AndReturn(mock_retention)
mock_server = MockServer(instance_id=instance_id)
image_list = self._create_images_list(mock_server.id, 5)
self.nova_client.images.list(detailed=True).AndReturn(image_list)
# The image list happens to be in descending created order
self.nova_client.images.delete(image_list[-2].id)
self.nova_client.images.delete(image_list[-1].id)
self._init_worker_mock()
self.worker.update_job(fakes.JOB_ID, "DONE", timeout=None, error_message=None)
self.mox.StubOutWithMock(utils, "generate_notification")
utils.generate_notification(None, "qonos.job.run.start", mox.IsA(dict), mox.IsA(str))
utils.generate_notification(None, "qonos.job.run.end", mox.IsA(dict), mox.IsA(str))
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例6: test_process_job_should_not_create_on_job_error_image_ok
def test_process_job_should_not_create_on_job_error_image_ok(self):
timeutils.set_time_override()
self.job['metadata']['image_id'] = IMAGE_ID
self.job['status'] = 'ERROR'
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('SAVING'))
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
mock_retention = MockRetention()
self.nova_client.rax_scheduled_images_python_novaclient_ext.\
get(mox.IsA(str)).AndReturn(mock_retention)
self._simple_prepare_worker_mock(skip_metadata_update=True)
self.worker.update_job(fakes.JOB_ID, 'DONE', timeout=None,
error_message=None)
self.mox.StubOutWithMock(utils, 'generate_notification')
utils.generate_notification(None, mox.IsA(str), mox.IsA(dict),
mox.IsA(str)).MultipleTimes()
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例7: test_process_job_should_not_create_on_job_error_image_ok
def test_process_job_should_not_create_on_job_error_image_ok(self):
timeutils.set_time_override()
self.job['metadata']['image_id'] = IMAGE_ID
self.job['status'] = 'ERROR'
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('SAVING'))
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
mock_retention = MockRetention()
self.nova_client.rax_scheduled_images_python_novaclient_ext.\
get(mox.IsA(str)).AndReturn(mock_retention)
self._simple_prepare_worker_mock(skip_metadata_update=True)
self.worker.get_qonos_client().AndReturn(self.qonos_client)
self.qonos_client.delete_schedule(mox.IsA(str))
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例8: test_process_job_should_succeed_immediately
def test_process_job_should_succeed_immediately(self):
timeutils.set_time_override()
self.nova_client.servers.get(mox.IsA(str)).AndReturn(MockServer())
self.nova_client.servers.create_image(mox.IsA(str),
mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
mock_retention = MockRetention()
self.nova_client.rax_scheduled_images_python_novaclient_ext.\
get(mox.IsA(str)).AndReturn(mock_retention)
self._simple_prepare_worker_mock()
self.mox.StubOutWithMock(utils, 'generate_notification')
utils.generate_notification(None, 'qonos.job.run.start', mox.IsA(dict),
mox.IsA(str))
utils.generate_notification(None, 'qonos.job.run.end', mox.IsA(dict),
mox.IsA(str))
self.worker.get_qonos_client().AndReturn(self.qonos_client)
self.qonos_client.delete_schedule(mox.IsA(str))
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例9: test_process_job_should_continue_when_image_id_present
def test_process_job_should_continue_when_image_id_present(self):
timeutils.set_time_override()
self.job['metadata']['image_id'] = IMAGE_ID
self.job['status'] = 'PROCESSING'
# Note NO call to create_image is expected
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
mock_retention = MockRetention()
self.nova_client.rax_scheduled_images_python_novaclient_ext.\
get(mox.IsA(str)).AndReturn(mock_retention)
self._simple_prepare_worker_mock(skip_metadata_update=True)
self.worker.get_qonos_client().AndReturn(self.qonos_client)
self.qonos_client.delete_schedule(mox.IsA(str))
self.worker.update_job(fakes.JOB_ID, 'DONE', timeout=None,
error_message=None)
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例10: test_generate_image_name_weekly
def test_generate_image_name_weekly(self):
schedule = {'day_of_week': 1}
timeutils.set_time_override(datetime.datetime(2013, 3, 22, 22, 39, 27))
timestamp = '1363991967'
processor = TestableSnapshotProcessor(self.nova_client)
image_name = processor.generate_image_name(schedule, 'test')
self.assertEqual(image_name, 'Weekly-test-' + timestamp)
示例11: test_doesnt_delete_images_on_retention_error
def test_doesnt_delete_images_on_retention_error(self):
timeutils.set_time_override()
self.nova_client.servers.get(mox.IsA(str)).AndReturn(MockServer())
self.nova_client.servers.create_image(mox.IsA(str),
mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
self.nova_client.rax_scheduled_images_python_novaclient_ext.\
get(mox.IsA(str)).AndRaise(Exception())
mock_server = MockServer(retention=None)
self._init_worker_mock()
self.mox.StubOutWithMock(utils, 'generate_notification')
utils.generate_notification(None, 'qonos.job.run.start', mox.IsA(dict),
mox.IsA(str))
utils.generate_notification(None, 'qonos.job.run.end', mox.IsA(dict),
mox.IsA(str))
self.worker.get_qonos_client().AndReturn(self.qonos_client)
self.qonos_client.delete_schedule(mox.IsA(str))
self.worker.update_job(fakes.JOB_ID, 'DONE', timeout=None,
error_message=None)
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例12: test_process_job_should_create_on_job_error_image_failed
def test_process_job_should_create_on_job_error_image_failed(self):
timeutils.set_time_override()
self.job['metadata']['image_id'] = IMAGE_ID
self.job['status'] = 'ERROR'
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('KILLED'))
self.nova_client.servers.get(mox.IsA(str)).AndReturn(MockServer())
self.nova_client.servers.create_image(mox.IsA(str),
mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
mock_retention = MockRetention()
self.nova_client.rax_scheduled_images_python_novaclient_ext.\
get(mox.IsA(str)).AndReturn(mock_retention)
self._simple_prepare_worker_mock()
self.worker.get_qonos_client().AndReturn(self.qonos_client)
self.qonos_client.delete_schedule(mox.IsA(str))
self.worker.update_job(fakes.JOB_ID, 'DONE', timeout=None,
error_message=None)
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例13: test_process_job_should_create_on_job_error_image_failed
def test_process_job_should_create_on_job_error_image_failed(self):
timeutils.set_time_override()
self.job["metadata"]["image_id"] = IMAGE_ID
self.job["status"] = "ERROR"
self.nova_client.images.get(IMAGE_ID).AndReturn(MockImageStatus("KILLED"))
self.nova_client.servers.get(mox.IsA(str)).AndReturn(MockServer())
self.nova_client.servers.create_image(mox.IsA(str), mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(MockImageStatus("ACTIVE"))
mock_retention = MockRetention()
self.nova_client.rax_scheduled_images_python_novaclient_ext.get(mox.IsA(str)).AndReturn(mock_retention)
self._simple_prepare_worker_mock()
self.worker.get_qonos_client().AndReturn(self.qonos_client)
self.qonos_client.delete_schedule(mox.IsA(str))
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例14: test_process_job_should_succeed_after_multiple_tries
def test_process_job_should_succeed_after_multiple_tries(self):
timeutils.set_time_override()
self.nova_client.servers.get(mox.IsA(str)).AndReturn(MockServer())
self.nova_client.servers.create_image(mox.IsA(str),
mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('QUEUED'))
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('SAVING'))
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('SAVING'))
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
mock_retention = MockRetention()
self.nova_client.rax_scheduled_images_python_novaclient_ext.\
get(mox.IsA(str)).AndReturn(mock_retention)
self._simple_prepare_worker_mock()
self.mox.StubOutWithMock(utils, 'generate_notification')
utils.generate_notification(None, 'qonos.job.run.start', mox.IsA(dict),
mox.IsA(str))
utils.generate_notification(None, 'qonos.job.update', mox.IsA(dict),
mox.IsA(str)).MultipleTimes()
utils.generate_notification(None, 'qonos.job.run.end', mox.IsA(dict),
mox.IsA(str))
self.worker.update_job(fakes.JOB_ID, 'DONE', timeout=None,
error_message=None)
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()
示例15: test_process_job_should_not_continue_when_in_bad_status
def test_process_job_should_not_continue_when_in_bad_status(self):
timeutils.set_time_override()
self.job['metadata']['image_id'] = IMAGE_ID
self.job['status'] = 'ERROR'
self.nova_client.servers.get(mox.IsA(str)).AndReturn(MockServer())
self.nova_client.servers.create_image(mox.IsA(str),
mox.IsA(str), self.snapshot_meta).AndReturn(IMAGE_ID)
self.nova_client.images.get(IMAGE_ID).AndReturn(
MockImageStatus('ACTIVE'))
mock_retention = MockRetention()
self.nova_client.rax_scheduled_images_python_novaclient_ext.\
get(mox.IsA(str)).AndReturn(mock_retention)
self._simple_prepare_worker_mock()
self.mox.ReplayAll()
processor = TestableSnapshotProcessor(self.nova_client)
processor.init_processor(self.worker)
processor.process_job(self.job)
self.mox.VerifyAll()