コード例 #1
0
ファイル: helpers.py プロジェクト: kholdaway/koku
    def _populate_storage_daily_table(self):
        """Populate the daily table."""
        included_fields = [
            'namespace',
            'pod',
            'persistentvolumeclaim',
            'persistentvolume',
            'storageclass',
            'persistentvolume_labels',
            'persistentvolumeclaim_labels'
        ]
        annotations = {
            'node': Value(random.choice(self.line_items).get('node'), output_field=CharField()),
            'usage_start': F('report__interval_start'),
            'usage_end': F('report__interval_start'),
            'persistentvolumeclaim_capacity_bytes': Max('persistentvolumeclaim_capacity_bytes'),
            'persistentvolumeclaim_capacity_byte_seconds': Sum('persistentvolumeclaim_capacity_byte_seconds'),
            'volume_request_storage_byte_seconds': Sum('volume_request_storage_byte_seconds'),
            'persistentvolumeclaim_usage_byte_seconds': Sum('persistentvolumeclaim_usage_byte_seconds'),
            'cluster_id': F('report_period__cluster_id'),
            'cluster_alias': Value(self.cluster_alias, output_field=CharField()),
        }
        entries = OCPStorageLineItem.objects\
            .values(*included_fields)\
            .annotate(**annotations)

        for entry in entries:
            entry['total_seconds'] = 3600
            daily = OCPStorageLineItemDaily(**entry)
            daily.save()
コード例 #2
0
ファイル: helpers.py プロジェクト: zanetworker/koku
    def _populate_storage_daily_table(self):
        """Populate the daily table."""
        included_fields = [
            "namespace",
            "pod",
            "report_period_id",
            "persistentvolumeclaim",
            "persistentvolume",
            "storageclass",
            "persistentvolume_labels",
            "persistentvolumeclaim_labels",
        ]
        annotations = {
            "node":
            Value(random.choice(self.line_items).get("node"),
                  output_field=CharField()),
            "usage_start":
            F("report__interval_start"),
            "usage_end":
            F("report__interval_start"),
            "persistentvolumeclaim_capacity_bytes":
            Max("persistentvolumeclaim_capacity_bytes"),
            "persistentvolumeclaim_capacity_byte_seconds":
            Sum("persistentvolumeclaim_capacity_byte_seconds"),
            "volume_request_storage_byte_seconds":
            Sum("volume_request_storage_byte_seconds"),
            "persistentvolumeclaim_usage_byte_seconds":
            Sum("persistentvolumeclaim_usage_byte_seconds"),
            "cluster_id":
            F("report_period__cluster_id"),
            "cluster_alias":
            Value(self.cluster_alias, output_field=CharField()),
        }
        entries = OCPStorageLineItem.objects.values(*included_fields).annotate(
            **annotations)

        for entry in entries:
            entry["total_seconds"] = 3600
            daily = OCPStorageLineItemDaily(**entry)
            daily.save()