هنگامی که من تولید دسته ای از وظایف DolphinScheduler را پیاده سازی کردم و آنها را وارد کردم، مشخص شد که وظایف را تنها می توان یک به یک وارد کرد، بنابراین استفاده از API ظاهرا راحت تر است.
DolphinScheduler API Documentation
DolphinScheduler اسناد API را در دسترس دارد:
http://IP:12345/dolphinscheduler/swagger-ui/index.html?language=zh_CN&lang=cn
با این حال، مستندات نسبتا مختصر است، بنابراین باید خودتان آن را مطالعه کنید.
نشانه: همه APIها به یک توکن نیاز دارند.
در مرکز امنیتی – مدیریت رمز، یک توکن ایجاد کنید. این توکن را به خاطر بسپارید، زیرا برای همه تماسهای API بعدی مورد نیاز است.
سربرگ: هدر درخواست را با استفاده از توکن ذکر شده در بالا بسازید:
token = ''
headers = {
'Accept': 'application/json',
'token': token
}
شناسه پروژه: project_id
را می توان در URL هنگام مشاهده گردش کار پروژه یافت.
DolphinScheduler Task Import API
API برای وارد کردن وظایف:
import_url = 'http://IP:12345/dolphinscheduler/projects/{project_id}/process-definition/import'
با دانستن API، می توانید وارد کردن را ادامه دهید:
def import_job(file_path):
# Open the file and read it as binary data
with open(file_path, 'rb') as file:
files = {'file': file}
# Import the workflow
response = requests.post(import_url, headers=headers, files=files)
...