# limitations under the License.
import datetime
import logging
-import uuid
import traceback
+import uuid
from functools import reduce
from catalog.pub.database.models import JobStatusModel, JobModel
-from catalog.pub.utils import idutil
logger = logging.getLogger(__name__)
JOB_STATUS = enum(PROCESSING=0, FINISH=1)
JOB_MODEL_STATUS = enum(STARTED='started', PROCESSING='processing', FINISHED='finished', ERROR='error',
TIMEOUT='timeout')
-JOB_TYPE = enum(CREATE_VNF="create vnf", TERMINATE_VNF="terminate vnf", GRANT_VNF="grant vnf", MANUAL_SCALE_VNF="manual scale vnf",
+JOB_TYPE = enum(CREATE_VNF="create vnf", TERMINATE_VNF="terminate vnf", GRANT_VNF="grant vnf",
+ MANUAL_SCALE_VNF="manual scale vnf",
HEAL_VNF="heal vnf")
+JOB_ERROR_CODE = enum(NORMAL=0, PACKAGE_EXIST=1, CATALOG_EXCEPTION=2, SYSTEM_ERROR=3)
class JobUtil(object):
try:
int_progress = int(progress)
job_status = JobStatusModel()
- job_status.indexid = int(idutil.get_auto_id(job_id))
+ jobstatuslist = JobStatusModel.objects.filter(jobid=job_id)
+ indexid = 0
+ for jobstatus in jobstatuslist:
+ if jobstatus.indexid > indexid:
+ indexid = jobstatus.indexid
+ job_status.indexid = indexid + 1
job_status.jobid = job_id
job_status.status = "processing"
job_status.progress = int_progress