Migrating from OpenPype to Ayon

Is there any guide on how to transition a working pipeline in OP to Ayon? (i.e. how to transfer existing projects, best practices on running them both concurrently for different projects, ways to try keep settings more or less on sync, things to consider on migrating custom OP addons to Ayon, deprecated workflows…)

Through this topic Using Ayon service host the “Importing projects” functionality caught my eye and I was trying to figure out which Ayon addon had that defined and I couldn’t find it anywhere. I was able to find it on the Docker hub: Docker and of course I can inspect the code after building the Docker image but is this a deprecated functionality?

Thank you!

I call @milan he can tell us much more.
But, let me share my 2 cents.

You are asking about these points:

  • Transfer Existing Projects
  • Sync Settings
  • Deprecated workflows

Transfer Existing Projects:

As far as I know:
It’s done through OpenPype import Addon which works in one way!

This addon requires running OpenPype import service.

It accepts packed projects (ZIP files)

Packaging in OpenPyep is supported only for single root projects.

Sync Settings

As far as I know:

  1. Any setting found in OP should have an equivalent in Ayon.
    we always sync updates when updating any settings.
    e.g. check screenshots in this PR’s changelog

  2. Sync Settings values
    in my personal experience, I was just doing it manually by myself.
    I don’t know if there’s a tool that automate this process.

Deprecated workflows

In my personal experience, knowing the fact that I’m living in a testing environment and I’m not sure about production environment.

OpenPype and Ayon share almost the same pipeline code and any added/enhanced/fixed feature should be tested in both OP and Ayon before merging
So, Everything should be working the same and more…

This section is missing information on how to generate those .zip with thumbnails from an OpenPype project.

Also, could you clarify and share the relevant repository for that addon? Or is the docker (not updated in 5 months) that Fabia linked the correct one to use? I feel like the addon you’re referring to currently isn’t public?

Does the “Transfer Existing Projects” feature transfer these as well? Or is it expected to still have to tweak settings manually?

1 Like

tbh, openpype import addon should have its own guide in order to wrap up the whole process.
In essence, my comment actually lacks two pieces of information.

  1. where to get the addon ?
    As far as I know it’s planned to be a paid feature but it’s better to leave this question for @milan as he has a lot of plans.

  2. How to pack OpenPype
    as far as I can remember, it’s mentioned somewhere in OP docs
    I can’t remember… but, here’s the code to run in OP console.

# ------------ Get All Projects ----------------
from openpype.client import get_projects

def get_all_projects():
    return [prj["name"] for prj in get_projects()]

print(get_all_projects())

# -------------- Pack Project ------------------
from openpype.lib.project_backpack import pack_project
"""Check pack_project doc string for more info. """

project = "project_name"
destination_dir = "desired_output_path" # Optional path, Project's root is used if not passed.
pack_project(project, destination_dir = destination_dir )

tbh I don’t know, I can only guess it can be the service run by Ayon as all services are dockerized

Hey All.

We’re very close to a Release candidate and with that we’ll provide a comprehensive guide on how to do it. All the tools needed for the migration exports are available publicly already, but there is a small process to it. We have a docs/coms cleanup hackaton on Thursday to put a bunch of these things together and make them available.

ayon-openpype-import addon will be available for free including the code when RC1 comes out. For testing though I’m happy to give private access early, we just need to somewhat limit the support overload at this point.

Migrated projects

Once a project is migrated from OP to AYON there are a few caveats to working with it.
All the workfiles and publishes should be accessible without issues, and technically it is possible to continue working with the project in AYON. HOWEVER!!! We cannot guarantee what will and won’t work. We know for sure that when opening OpenPype scene from AYON after an import, you can publish and make new instances, but you cannot change versions loaded into the scene using the scene inventory. This is because of unmatching representation IDs between Postgres and mongoDB. We have a tool that can fix it, but it was only tested in Maya and Nuke. We’ll make it available too.

2 Likes

Awesome, thanks for the update, happy to give the addon a shot if you need some beta early-testers, really looking forward to the update!!

Thank you!

1 Like

Hello,
For reference, there’s a PR to add it to the docs.

1 Like

when are you planning on opening access to the repo?