ayon-core
ayon-core copied to clipboard
Publishing: Low-level dynamic runtime instance creator
Changelog Description
This PR implements an approach to "lower level publishing" (tested in Houdini). This focuses on PDG/TOPs or any other type of batch creating runtime instances.
- TOPs/PDG example on accessing AYON api for folders, tasks, workfiles and publish the workfiles in background houdini processes (similar to legacy/old style publishing of workfiles)
- TOPs/PDG example on low level ingesting of publishes using an in-memory dynamic Creator.
Note that this is Houdini-tested but the "lower level dynamic" publishing is logic that is not Houdini only.
This PR adds a Batch/Dynamic Creator:
Currently, it creates runtime instances (they will disappear once you refresh the publisher) It doesn't inject any metadata. but it expects you to pass them manually. Here is an example https://gist.github.com/MustafaJafar/bd2a388e4a6aa3613d64a186ebb6660c
Additional info
As part of the Ynput Houdini Workgroup sessions I developed this quick prototype to expose a way to batch publish and ingest files. Consider it more of an exploration of what's possible then a "drop it in production now" ready-to-go solution.
TODO
- [ ] Keep in mind this set of goals
- [ ] Move core of logic out of Houdini
- [ ] Expose a simple API with examples
- [ ] Expose examples
- [ ] This PR should solve the issues here
Explainer
Since this PR is separated from https://github.com/ynput/ayon-core/pull/542 some of the logic in the demo provided there is now actually here - in particular to the logic the Houdini TOPs / PDG demos show.
https://github.com/ynput/ayon-core/assets/2439881/5f767493-10bd-41f6-b54f-89313a96da33
Demo scene file
The demo scene file:
Testing notes:
- Check out the branch
- Check out the explainer video
- Test the demo scene file
- Comment with great ideas on how to improve