implement rnedering via renderlib and nice error reports via traceback
This commit is contained in:
parent
84b8955ac3
commit
81b0c60fa6
1 changed files with 20 additions and 2 deletions
|
@ -1,9 +1,12 @@
|
||||||
#!/usr/bin/python3
|
#!/usr/bin/python3
|
||||||
import xmlrpc.client
|
import xmlrpc.client
|
||||||
|
import traceback
|
||||||
import socket
|
import socket
|
||||||
import time
|
import time
|
||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
|
|
||||||
|
import renderlib
|
||||||
import c3t_rpc_client as rpc
|
import c3t_rpc_client as rpc
|
||||||
|
|
||||||
print("C3TT preroll generator")
|
print("C3TT preroll generator")
|
||||||
|
@ -24,8 +27,19 @@ filter = {}
|
||||||
if not os.environ.get('CRS_ROOM') is None:
|
if not os.environ.get('CRS_ROOM') is None:
|
||||||
filter['Fahrplan.Room'] = os.environ['CRS_ROOM']
|
filter['Fahrplan.Room'] = os.environ['CRS_ROOM']
|
||||||
|
|
||||||
|
projects = {}
|
||||||
def generatePreroll(ticket):
|
def generatePreroll(ticket):
|
||||||
print('generating preroll for', ticket)
|
print(ticket)
|
||||||
|
projectname = ticket.get('Processing.Prerolls.Slug', ticket['Meta.Acronym'])
|
||||||
|
if not projectname in projects:
|
||||||
|
projects[projectname] = renderlib.loadProject(projectname)
|
||||||
|
|
||||||
|
project = projects[projectname]
|
||||||
|
task = project.ticket(ticket)
|
||||||
|
task.outfile = os.path.join(ticket['Processing.Path.Intros'], ticket['Fahrplan.ID'] + '.dv')
|
||||||
|
task.workdir = os.path.join(os.getcwd(), projectname, 'artwork')
|
||||||
|
renderlib.rendertask(task)
|
||||||
|
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
print('Asking RPC for {0}-tickets which are ready for state {1}'.format(ticket_type, ticket_state))
|
print('Asking RPC for {0}-tickets which are ready for state {1}'.format(ticket_type, ticket_state))
|
||||||
|
@ -33,7 +47,11 @@ while True:
|
||||||
ticket_id = rpc.assignNextUnassignedForState(ticket_type, ticket_state, url, token, host, secret, filter)
|
ticket_id = rpc.assignNextUnassignedForState(ticket_type, ticket_state, url, token, host, secret, filter)
|
||||||
if ticket_id != False:
|
if ticket_id != False:
|
||||||
ticket = rpc.getTicketProperties(str(ticket_id), url, token, host, secret)
|
ticket = rpc.getTicketProperties(str(ticket_id), url, token, host, secret)
|
||||||
generatePreroll(ticket)
|
try:
|
||||||
|
generatePreroll(ticket)
|
||||||
|
rpc.setTicketDone(str(ticket_id), url, token, host, secret)
|
||||||
|
except:
|
||||||
|
rpc.setTicketFailed(str(ticket_id), str(traceback.format_exc()), url, token, host, secret)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
print('No ticket found')
|
print('No ticket found')
|
||||||
|
|
Loading…
Add table
Reference in a new issue