Giter VIP home page Giter VIP logo

pyblish-deadline's Introduction

title

PyPI version Build Status Gitter

Pyblish

This project contains a known (but possibly old!) working combination of supported projects. See each corresponding project for latest up to date information, along with our forum and chat room below.

You may also be interested in..




Installation

Pyblish is available for Windows, Linux and MacOS, Python 2 and 3 via PyPI.

$ pip install pyblish

Contents

The PyPI package will install the latest known working combination of Pyblish projects, see setup.py for details.




Usage

Once installed, you will find a number of new Python packages available, most prominently pyblish.api

import pyblish.api
pyblish.api.discover()

See the README of each individual project for details, here are a few.

pyblish-deadline's People

Contributors

mkolar avatar mottosso avatar tokejepsen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

pyblish-deadline's Issues

Post Job script

Goal

To make it easier to complete a full publish with Deadline, without having to install event plugins.

Motivation

Event plugins are good for fine-tune control of the Deadline events, but can be a lot of manual setup to complete before a full publish with Deadline can be done.
This extension could provide a post-job script by default which will continue the publishing process after Deadline has executed the job.

Implemention

This can currently be implemented manually by providing the submission with a path to a post-job script. What this extension could help with, would be to standardize this script and add it by default.

Support for multiple Draft outputs

Currently the default implementation of Draft only takes in one template per job. With some simple modifications, Draft could support multiple outputs, so an image sequence could output high and low resolutions on different jobs.

The thinking is to have a list of draft templates in the submission parameters.

Delete temporary submission files

Currently the extension is writing temporary submission files to disk. These are purely for submission and the data is visible in the Monitor afterwards, so we don't need to keep these.

Setup testing

Goal

To be able to run tests on Travis or other CI's.

Draft extract offset

Having multiple extractors operating on the same data, seems to overwrite each other.

Solution atm is offsetting the extractors, but this is very intuitive, so need a solution for simultaneous execution. Adding a "deadlineDraftTemplate" data member might be best.

README

Write an introduction to this extension

remove validate_deadline_output_existence

I'd say that plugins like this should probably not be a part of extension. It's not really doing anything related to deadline and is only necessary in some hosts. For example, nuke needs folder created before rendering, but houdini creates them on the fly. This means that every single time we publish, it fails, we have to repair and run publish again.

How about we either remove it, or move it out of the plugins folder to 'optional' or the 'examples' folder. that way it would stay available if user wants to put it in their studio plugins, is not in the way for general deadline extension.

Create job per instance

We should be storing and creating deadline job, per instance.

Currently job_data get's appended to context, which however means, that every instance to be rendered, gets the same job_data, even though they might be very different.

It's also causing troubles when extracting ftrack data for deadline as they only get extracted for the first processed instance.

Documentation

Inform users about how to install and the workflow of this extension

Multiple jobs per instance + job for context

Hi,

  1. I want to submit multiple jobs per Instance. As the instance.data("deadlineData")["job"] suggests, it is not possible at the moment.
  2. I want to submit jobs for the Context.

Both seem doable, I am committed to implementing it, and submit a PR when ready. Do you have any pre-implementation notes?

Change order and setup dependencies in passthrough

Goal

Get Deadline Submission to process instances, instead of context, so its easier to see how far the submission process is.

Implemetation

Change the order of the instances in the context in what is now Deadline Passthrough. This will ensure the processing of the instances are in the correct order, so setting up dependencies in Deadline Submission is possible without processing the context.

@mottosso guessing you can change the order of the instance in context, similar to how you might do it in a collector?

Strip new_context from plugin

Goal

Reduce code of current plugin by getting rid of new_context.

Implementation

for instance in sorted(context, key=lambda instance: instance["deadlineData"]["order"]):
   # do things in your custom order.

Instead of this, and get rid of above code.

Submit failure detection

Output from submitting to Deadline only gets displayed to user.

Need to process string output and raise errors if any present.

Example collector

Include or document an example collector for Maya/Nuke, to show how all the functionality of the extension is working.

merge extract_dealine_draft plugins

There are 3 extract_deadline_draft plugins (vanilla, maya, nuke).

They practically do the same thing apart from setting the width and height of the frame. I think thse can easily be merge to just one plugin. To deal with the width and height then we could either do it by querying hosts and running different snippets based on that, or even omit the attributes altogether. I'm quite certain that deadline doesn't need either of them.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.