mirror of
https://github.com/ynput/ayon-core.git
synced 2026-01-01 16:34:53 +01:00
AY-745 - updated validator for DL connection
This commit is contained in:
parent
3137d8e797
commit
20d47e54ca
2 changed files with 33 additions and 2 deletions
|
|
@ -0,0 +1,17 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<root>
|
||||||
|
<error id="main">
|
||||||
|
<title>Deadline Authentication</title>
|
||||||
|
<description>
|
||||||
|
## Deadline authenticatin is required
|
||||||
|
|
||||||
|
This project has set in Settings that Deadline requires authentication.
|
||||||
|
|
||||||
|
### How to repair?
|
||||||
|
|
||||||
|
Please go to Ayon Server Site settings and provide your Deadline username and
|
||||||
|
most likely password too. (Deadline could run in configuration that empty passwords are allowed. Ask your administrator for details.)
|
||||||
|
|
||||||
|
</description>
|
||||||
|
</error>
|
||||||
|
</root>
|
||||||
|
|
@ -1,5 +1,7 @@
|
||||||
import pyblish.api
|
import pyblish.api
|
||||||
|
|
||||||
|
from ayon_core.pipeline import PublishXmlValidationError
|
||||||
|
|
||||||
from openpype_modules.deadline.abstract_submit_deadline import requests_get
|
from openpype_modules.deadline.abstract_submit_deadline import requests_get
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -15,8 +17,9 @@ class ValidateDeadlineConnection(pyblish.api.InstancePlugin):
|
||||||
responses = {}
|
responses = {}
|
||||||
|
|
||||||
def process(self, instance):
|
def process(self, instance):
|
||||||
|
context = instance.context
|
||||||
# get default deadline webservice url from deadline module
|
# get default deadline webservice url from deadline module
|
||||||
deadline_url = instance.context.data["defaultDeadline"]
|
deadline_url = context.data["defaultDeadline"]
|
||||||
# if custom one is set in instance, use that
|
# if custom one is set in instance, use that
|
||||||
if instance.data.get("deadlineUrl"):
|
if instance.data.get("deadlineUrl"):
|
||||||
deadline_url = instance.data.get("deadlineUrl")
|
deadline_url = instance.data.get("deadlineUrl")
|
||||||
|
|
@ -25,8 +28,19 @@ class ValidateDeadlineConnection(pyblish.api.InstancePlugin):
|
||||||
)
|
)
|
||||||
assert deadline_url, "Requires Deadline Webservice URL"
|
assert deadline_url, "Requires Deadline Webservice URL"
|
||||||
|
|
||||||
|
kwargs = {}
|
||||||
|
if context.data["deadline_require_authentication"]:
|
||||||
|
kwargs["auth"] = context.data["deadline_auth"]
|
||||||
|
|
||||||
|
if not context.data["deadline_auth"]:
|
||||||
|
raise PublishXmlValidationError(
|
||||||
|
self,
|
||||||
|
"Deadline requires authentication. "
|
||||||
|
"At least username is required to be set in "
|
||||||
|
"Site Settings.")
|
||||||
|
|
||||||
if deadline_url not in self.responses:
|
if deadline_url not in self.responses:
|
||||||
self.responses[deadline_url] = requests_get(deadline_url)
|
self.responses[deadline_url] = requests_get(deadline_url, **kwargs)
|
||||||
|
|
||||||
response = self.responses[deadline_url]
|
response = self.responses[deadline_url]
|
||||||
assert response.ok, "Response must be ok"
|
assert response.ok, "Response must be ok"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue