Beispiel #1
0
 def export_current_app(self, team, export_format, app):
     event_id = make_uuid()
     data = {
         "event_id": event_id,
         "group_key": app.group_key,
         "version": app.version,
         "format": export_format,
         "group_metadata": self.__get_group_metata(app)
     }
     region = self.get_app_share_region(app)
     if region is None:
         return 404, '无法查找当前应用分享所在数据中心', None
     region_api.export_app(region, team.tenant_name, data)
     export_record = app_export_record_repo.get_enter_export_record_by_unique_key(
         team.enterprise_id, app.group_key, app.version, export_format)
     if export_record:
         logger.debug("update export record !")
         export_record.event_id = event_id
         export_record.status = "exporting"
         export_record.update_time = datetime.datetime.now()
         export_record.save()
         new_export_record = export_record
     else:
         logger.debug("create export record !")
         code, msg, new_export_record = self.create_export_repo(
             event_id, export_format, app.group_key, app.version,
             team.enterprise_id)
         if code != 200:
             return code, msg, None
     return 200, "success", new_export_record
Beispiel #2
0
    def create_export_repo(self, event_id, export_format, group_key, version, enterprise_id):
        export_record = app_export_record_repo.get_enter_export_record_by_unique_key(enterprise_id, group_key, version,
                                                                                     export_format)
        if export_record:
            return 409, "已存在该导出类型的文件", None

        if event_id is None:
            event_id = make_uuid()
        params = {
            "event_id": event_id,
            "group_key": group_key,
            "version": version,
            "format": export_format,
            "status": "exporting",
            "enterprise_id": enterprise_id
        }
        new_export_record = app_export_record_repo.create_app_export_record(**params)
        return 200, "success", new_export_record