mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
create jobqueue addon
This commit is contained in:
parent
69e36b8aec
commit
ae803e3ad1
15 changed files with 24 additions and 14 deletions
|
|
@ -1 +0,0 @@
|
|||
__version__ = "1.0.0"
|
||||
|
|
@ -36,10 +36,12 @@ workstations know where to send or receive jobs.
|
|||
passed (this is added mainly for developing purposes)
|
||||
"""
|
||||
|
||||
import sys
|
||||
import json
|
||||
import copy
|
||||
import platform
|
||||
from urllib.parse import urlsplit, urlunsplit
|
||||
|
||||
import requests
|
||||
|
||||
from ayon_core.addon import AYONAddon, click_wrap
|
||||
from ayon_core.settings import get_studio_settings
|
||||
|
|
@ -48,7 +50,7 @@ from .version import __version__
|
|||
|
||||
|
||||
class JobQueueAddon(AYONAddon):
|
||||
name = "job_queue"
|
||||
name = "jobqueue"
|
||||
version = __version__
|
||||
|
||||
def initialize(self, studio_settings):
|
||||
|
|
@ -85,11 +87,6 @@ class JobQueueAddon(AYONAddon):
|
|||
|
||||
@staticmethod
|
||||
def url_conversion(url, ws=False):
|
||||
if sys.version_info[0] == 2:
|
||||
from urlparse import urlsplit, urlunsplit
|
||||
else:
|
||||
from urllib.parse import urlsplit, urlunsplit
|
||||
|
||||
if not url:
|
||||
return url
|
||||
|
||||
|
|
@ -136,8 +133,6 @@ class JobQueueAddon(AYONAddon):
|
|||
return self._server_url
|
||||
|
||||
def send_job(self, host_name, job_data):
|
||||
import requests
|
||||
|
||||
job_data = job_data or {}
|
||||
job_data["host_name"] = host_name
|
||||
api_path = "{}/api/jobs".format(self._server_url)
|
||||
|
|
@ -145,8 +140,6 @@ class JobQueueAddon(AYONAddon):
|
|||
return str(post_request.content.decode())
|
||||
|
||||
def get_job_status(self, job_id):
|
||||
import requests
|
||||
|
||||
api_path = "{}/api/jobs/{}".format(self._server_url, job_id)
|
||||
return requests.get(api_path).json()
|
||||
|
||||
|
|
@ -170,7 +163,6 @@ class JobQueueAddon(AYONAddon):
|
|||
|
||||
@classmethod
|
||||
def start_worker(cls, app_name, server_url=None):
|
||||
import requests
|
||||
from ayon_applications import ApplicationManager
|
||||
|
||||
if not server_url:
|
||||
|
|
@ -199,7 +191,7 @@ class JobQueueAddon(AYONAddon):
|
|||
|
||||
@classmethod
|
||||
def _start_tvpaint_worker(cls, app, server_url):
|
||||
from ayon_core.hosts.tvpaint.worker import main
|
||||
from ayon_tvpaint.worker import main
|
||||
|
||||
executable = app.find_executable()
|
||||
if not executable:
|
||||
3
server_addon/jobqueue/client/ayon_jobqueue/version.py
Normal file
3
server_addon/jobqueue/client/ayon_jobqueue/version.py
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
"""Package declaring AYON addon 'jobqueue' version."""
|
||||
__version__ = "1.1.0"
|
||||
11
server_addon/jobqueue/package.py
Normal file
11
server_addon/jobqueue/package.py
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
name = "jobqueue"
|
||||
title = "JobQueue"
|
||||
version = "1.1.0"
|
||||
client_dir = "ayon_jobqueue"
|
||||
|
||||
ayon_required_addons = {
|
||||
"core": ">0.3.2",
|
||||
}
|
||||
ayon_compatible_addons = {
|
||||
"tvpaint": ">=0.2.0",
|
||||
}
|
||||
5
server_addon/jobqueue/server/__init__.py
Normal file
5
server_addon/jobqueue/server/__init__.py
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
from ayon_server.addons import BaseServerAddon
|
||||
|
||||
|
||||
class JobQueueAddon(BaseServerAddon):
|
||||
pass
|
||||
Loading…
Add table
Add a link
Reference in a new issue