Testing AYON pipeline early access beta (Deprecated)

Please note that this guide is now deprecated and we’ll be soon released and updated, streamlined process with the release of production beta of AYON

While we are in the beta phase with the new AYON server and things are changing very quickly, we’ll do our best to keep this guide up to date, to get you up and running. Once we reach 1.0 release, we’ll migrate the guide to the official documentation.

Set up early access AYON server and desktop application

To get everything up and running you will need:

  1. AYON server - The heart of the pipeline that all other tools talk to
  2. AYON-addons - (temporary repository holding the default configuration of all addons)
  3. OpenPype - Desktop application that takes care of the pipeline integrations on artist workstation

1. Server

The best way to deploy the server is using our provided ayon-docker repository with the official docker image. Simply follow the instructions in the repository readme

2. Addons

To be able to run AYON desktop app with in a meaningful way, you’ll need to populate your server with default setting definitions for addons. At the moment they all reside in a single repository on GitHub AYON-addons

To install them you need to

  1. Download the repository
  2. Copy the content of the repository to ayon-docker/addons/
  3. Restart the server

Addons directory structure follows this scheme: addons/{addon_name}/{addon_version}. At this moment, version directory is always named dev.

image

3. Prepare Desktop App (Currently still named OpenPype)

To test OpenPype with AYON server you’ll need to either run it from code, or build it yourself.

  1. Clone GitHub - ynput/OpenPype: Main OpenPype repository and AYON openpype addon codebase
  2. Checkout branch release/next-minor
  3. Follow readme in the repository to set up your environment

4. Start testing AYON pipeline

  1. Configure system-wide application paths

    • Make sure that you have enabled at least applications addon for production on the server

    • Check if the default DCC executable paths match your system and adjust them if it’s not the case

  2. Create a project (or run our demo project generator) and add some DCCs into its applications attribute.

  3. Start OpenPype desktop application (OpenPype Tray) using ayon_start.py

Important Note
AYON mode has its own executable (and start script). To start OpenPype in AYON mode just replace start.py with ayon_start.py (there is also a tray start script in OpenPype/tools ).

Congratulations! From this point, you should be able to do almost everything that was possible to do in OpenPype. Please report any issues encountered on this topic so we can keep track and adjust the guide accordingly.

To talk about functionality, new features, or enhancements, please create a new topic, so we can keep this topic dedicated purely to getting AYON beta up and running.

3 Likes

Is part 3 posible with the released (compiled) packages?

no, because there is no release with it yet. It will be available from release 3.16.

2 Likes

I still don’t understand how to start the server since I’m unfamiliar with docker and Linux. If there’s a more specific step-by-step doc to teach how to setup the server, or whatever MongoDB, PostgreSQL, docker, or any other else, that would be helpful.

1 Like

Hi.

At the moment, docker is absolutely the easiest way to launch AYON server. If you’re not familiar with it, the maybe the early access might just be a bit too early for you :slight_smile:. You’d also need to run OpenPype in the AYON mode from either a custom build or from code, which is also a bit involved, so you might need to wait a bit longer until we’re closer to final release.

Nevertheless if you’d like to see what’s currently there in the API and front end, head to AYON.cloud, log in using a discord account (if you’re in our discord server as well) and you can have a wander there.

OK, thanks, After 2 days of learning Docker and Linux, I’ve already started the server from my Docker on CentOS successfully. And I can visit it from another Macbook and windows pc. That’s so great.

I dont get the “Addons Versions” or “Studio Settings” tabs.

Any ideas why?

@tokestuartjepsen I think you might just need to go to the user icon on the top right and then to settings.

I’ve got the server up and running, but can’t get the addons to show under Addon versions, it just displays a “0”. I’ve got the addons copied into the /addons folder and restarted server but no luck. Only thing I’m unsure of in the instructions is this step:

  • Modify the default settings in the settings/template.json file.

No idea if this is related to my issue at all, but I’m not sure how exactly to modify the template.json file.

Any idea why they won’t show?

What tabs do you see? You may be either on a wrong page (Project manager has similar navbar with “Dashboard”, “Anatomy”, “Project settings”, “Site settings” and “Roots”) or you don’t have manager+ rights (In that case you would see just “Site settings” in the settings page navbar.)

You shouldn’t need to use template.json - it is just a way to bootstrap your configuration conveniently and reproducibly. I’m actually working on documenting the template.json structure.

But as soon as you put addons to the addons directory and restart the server (using "server restart button in the user menu is enough, no need to restart the whole stack). You should be able to see them in the “Addons versions” page.

If not, check the logs whether you can see addons are initializing after server restart. It should look like this:

ayon-server-1    | 2023-04-19 09:17:33 INFO       server          Example addon INIT
ayon-server-1    | 2023-04-19 09:17:33 INFO       server          Initializing addon example
ayon-server-1    | 2023-04-19 09:17:33 INFO       server          Initializing addon core v1.0.0 in /addons/core/dev
ayon-server-1    | 2023-04-19 09:17:33 INFO       server          Initializing addon core

If not, verify the directory structure of the addons. The structure should be:
addons/ADDON_NAME/ADDON_VERSION/__init__.py
so for example addons/example/dev/__init__.py

__init__.py is the file Ayon looks for and it needs to be nested this way.

1 Like

Where should I see “Addons” and “Studio Settings”?

There’s a user menu icon in the top right corner, from that menu, you can go to the settings page.

1 Like

Next issue :slight_smile:

PS C:\Users\tokejepsen\OpenPype\tools> .\run_tray_ayon.ps1
>>> Reading Poetry ... OK
*** WRN: >>> { ModulesLoader }: [  Directory for addon applications 1.0.0 does not exists. Path "C:\Users\tokejepsen\AppData\Local\ynput\ayon\addons\applications_1.0.0"  ]
Traceback (most recent call last):
  File "C:\Users\tokejepsen\OpenPype\openpype\vendor\python\common\ayon_api\server_api.py", line 139, in raise_for_status
    self._response.raise_for_status()
  File "C:\Users\tokejepsen\OpenPype\.venv\lib\site-packages\requests\models.py", line 1021, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://localhost:5000/api/settings/addons

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\tokejepsen\OpenPype\ayon_start.py", line 384, in <module>
    boot()
  File "C:\Users\tokejepsen\OpenPype\ayon_start.py", line 331, in boot
    from openpype import cli
  File "C:\Users\tokejepsen\OpenPype\vendor\python\shiboken2\files.dir\shibokensupport\__feature__.py", line 142, in _import
    return original_import(name, *args, **kwargs)
  File "C:\Users\tokejepsen\OpenPype\openpype\cli.py", line 63, in <module>
    def module(ctx):
  File "C:\Users\tokejepsen\OpenPype\openpype\pype_commands.py", line 42, in add_modules
    manager = ModulesManager()
  File "C:\Users\tokejepsen\OpenPype\openpype\modules\base.py", line 672, in __init__
    self.initialize_modules()
  File "C:\Users\tokejepsen\OpenPype\openpype\modules\base.py", line 720, in initialize_modules
    system_settings = get_system_settings()
  File "C:\Users\tokejepsen\OpenPype\openpype\settings\lib.py", line 1136, in get_system_settings
    return get_ayon_system_settings(default_settings)
  File "C:\Users\tokejepsen\OpenPype\openpype\settings\ayon_settings.py", line 1123, in get_ayon_system_settings
    AyonSettingsCache.get_value_by_project(None)
  File "C:\Users\tokejepsen\OpenPype\openpype\settings\ayon_settings.py", line 1097, in get_value_by_project
    production_settings = cls.get_production_settings()
  File "C:\Users\tokejepsen\OpenPype\openpype\settings\ayon_settings.py", line 1088, in get_production_settings
    value = ayon_api.get_addons_settings(only_values=False)
  File "C:\Users\tokejepsen\OpenPype\openpype\vendor\python\common\ayon_api\_api.py", line 621, in get_addons_settings
    return con.get_addons_settings(*args, **kwargs)
  File "C:\Users\tokejepsen\OpenPype\openpype\vendor\python\common\ayon_api\server_api.py", line 2120, in get_addons_settings
    return self.get_addons_studio_settings(variant, only_values)
  File "C:\Users\tokejepsen\OpenPype\openpype\vendor\python\common\ayon_api\server_api.py", line 2028, in get_addons_studio_settings
    response.raise_for_status()
  File "C:\Users\tokejepsen\OpenPype\openpype\vendor\python\common\ayon_api\server_api.py", line 141, in raise_for_status
    raise HTTPRequestError(str(exc), exc.response)
ayon_api.exceptions.HTTPRequestError: 404 Client Error: Not Found for url: http://localhost:5000/api/settings/addons

Guessing it because I’m running from the addons repository so there is only dev, but how do I set that?

This issue was due to not having the latest versions of the docker container pulled;

manage.ps1 update (Windows)

1 Like

Looks like I just needed to update my version of Docker :sweat_smile:, thanks for your help!


Please help. How can I connect to the server with the OpenPype application I built?

Are you sure you are running the executable from step 3 and you are in the release/next-minor branch?

Followed everything above mentioned. Got the server running, Ayon Desktop seems running OK.
Publisher, Launcher, Loader from Ayon Tray can communicate with the server smoothly.
However, I got no luck in using those pipeline tools in DCC apps:

  • I can fire up Maya and Houdini from the Ayon Launcher.
  • Maya with workfile opened, but no pipeline tools.
  • Got Python Errors form Houdini Console
  • Ayon Plugin form UE cannot load openpype module.
Some Screen Captures




Thanks, if anyone can point me to the right direction.

I’ve had a new error pop up, this time in the Blender integration.

Workfile saving works just fine, as does launching and using Loader for Blender.

However, for Publishing I get this error “NoneType” which I’ve had before

Additionally, for Unreal, I’m getting the same error as @SUPERVANSHIP which he’s showing above