How To Programmatically Create A Job

Overview

In this article, you will learn how to call the CloudBolt job module to create a job via the CloudBolt plug-in or XUI.

Use case: In an XUI, I want to create a job that performs some action. Then, I want to retrieve some data from the created job log.


Considerations

You should have CloudBolt Admin right to add a CloudBolt plug-in in CMP

Procedure

Step 1 Add the following code to your XUI function

import datetime
from jobs.models import Job, JobParameters
from accounts.models import UserProfile
from utilities.logger import ThreadLogger
logger = ThreadLogger(__name__)
user=UserProfile.objects.get(id=useridofthecbuser)
job_parameters = JobParameters.objects.create() 
job = server.jobs.create(
type='action',
job_parameters=job_parameters,
status='RUNNING',
owner_id=user.id,
start_date=datetime.datetime.now())
logger = set_thread_logger(job)


Additional information

To learn more about different job type, take a look at http://your_CloudBolt_server/alladmin/doc/models/

https://docs.cloudbolt.io/articles/#!cloudbolt-latest-docs/resources-for-writing-plug-ins/a/h1_776536649

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.