Пример #1
0
 def test_write_marker_to_db_marker_exists(self):
     executions_queue = self.get_queue()
     dumper = Dumper(queue=executions_queue,
                     export_dir='/tmp',
                     batch_size=5,
                     max_files_per_sleep=1,
                     file_prefix='st2-stuff-',
                     file_format='json')
     timestamps = [
         isotime.parse(execution.end_timestamp)
         for execution in self.execution_apis
     ]
     max_timestamp = max(timestamps)
     first_marker_db = dumper._write_marker_to_db(max_timestamp)
     second_marker_db = dumper._write_marker_to_db(max_timestamp +
                                                   datetime.timedelta(
                                                       hours=1))
     markers = DumperMarker.get_all()
     self.assertEqual(len(markers), 1)
     final_marker_id = markers[0].id
     self.assertEqual(first_marker_db.id, final_marker_id)
     self.assertEqual(second_marker_db.id, final_marker_id)
     self.assertEqual(markers[0].marker, second_marker_db.marker)
     self.assertTrue(
         second_marker_db.updated_at > first_marker_db.updated_at)
Пример #2
0
 def _get_export_marker_from_db(self):
     try:
         markers = DumperMarker.get_all()
     except:
         return None
     else:
         if len(markers) >= 1:
             marker = markers[0]
             return isotime.parse(marker.marker)
         else:
             return None
Пример #3
0
    def _write_marker_to_db(self, new_marker):
        LOG.info('Updating marker in db to: %s', new_marker)
        markers = DumperMarker.get_all()

        if len(markers) > 1:
            LOG.exception('More than one dumper marker found. Using first found one.')

        marker = isotime.format(new_marker, offset=False)
        updated_at = date_utils.get_datetime_utc_now()

        if markers:
            marker_id = markers[0]['id']
        else:
            marker_id = None

        marker_db = DumperMarkerDB(id=marker_id, marker=marker, updated_at=updated_at)
        return DumperMarker.add_or_update(marker_db)
Пример #4
0
 def test_write_marker_to_db_marker_exists(self):
     executions_queue = self.get_queue()
     dumper = Dumper(queue=executions_queue,
                     export_dir='/tmp', batch_size=5,
                     max_files_per_sleep=1,
                     file_prefix='st2-stuff-', file_format='json')
     timestamps = [isotime.parse(execution.end_timestamp) for execution in self.execution_apis]
     max_timestamp = max(timestamps)
     first_marker_db = dumper._write_marker_to_db(max_timestamp)
     second_marker_db = dumper._write_marker_to_db(max_timestamp + datetime.timedelta(hours=1))
     markers = DumperMarker.get_all()
     self.assertEqual(len(markers), 1)
     final_marker_id = markers[0].id
     self.assertEqual(first_marker_db.id, final_marker_id)
     self.assertEqual(second_marker_db.id, final_marker_id)
     self.assertEqual(markers[0].marker, second_marker_db.marker)
     self.assertTrue(second_marker_db.updated_at > first_marker_db.updated_at)
Пример #5
0
    def _write_marker_to_db(self, new_marker):
        LOG.info('Updating marker in db to: %s', new_marker)
        marker = DumperMarker.get_all()

        if len(marker) > 1:
            LOG.exception(
                'More than one dumper marker found. Using first found one.')

        marker_db = None
        if marker:
            marker = marker[0]
            marker_db = DumperMarkerDB(id=marker['id'])
        else:
            marker_db = DumperMarkerDB()

        marker_db.marker = isotime.format(new_marker, offset=False)
        marker_db.updated_at = date_utils.get_datetime_utc_now()
        return DumperMarker.add_or_update(marker_db)
Пример #6
0
    def _write_marker_to_db(self, new_marker):
        LOG.info("Updating marker in db to: %s", new_marker)
        markers = DumperMarker.get_all()

        if len(markers) > 1:
            LOG.exception(
                "More than one dumper marker found. Using first found one.")

        marker = isotime.format(new_marker, offset=False)
        updated_at = date_utils.get_datetime_utc_now()

        if markers:
            marker_id = markers[0]["id"]
        else:
            marker_id = None

        marker_db = DumperMarkerDB(id=marker_id,
                                   marker=marker,
                                   updated_at=updated_at)
        return DumperMarker.add_or_update(marker_db)