Mirror of ayon core so that FrameWork can fork it.
Find a file
2021-03-01 12:25:28 +01:00
.circleci Update config.yml 2020-10-13 23:22:17 +02:00
.github Create weekly-digest.yml 2020-10-16 15:46:53 +02:00
docs bugfixes and refactors 2021-01-14 20:47:24 +01:00
igniter change version comparsion, handling of venv and startup 2021-01-15 22:42:16 +01:00
pype added simple check of task existence when template requires task name 2021-03-01 12:25:28 +01:00
repos update core 2021-02-02 11:21:34 +01:00
schema added workfile schema 2021-01-07 16:30:47 +01:00
tests change version comparsion, handling of venv and startup 2021-01-15 22:42:16 +01:00
tools fix pype_root directories for build and env 2021-02-05 10:40:55 +01:00
vendor add vendor folder 2021-01-14 14:56:21 +01:00
.gitattributes Merge remote-tracking branch 'origin/develop' into 3.0/refactoring 2020-11-18 15:19:17 +01:00
.github_changelog_generator update changelog config 2020-11-24 00:04:39 +01:00
.gitignore add also old venv to gitignore for good measure 2021-02-02 21:22:35 +01:00
.gitmodules fix submodules 2021-01-22 12:11:05 +01:00
.hound.yml hound flake8 config moved to setup.cfg 2020-09-10 00:17:41 +02:00
.prettierrc add prettier config 2020-12-15 15:43:55 +01:00
CHANGELOG.md update changelog 2020-11-24 00:04:13 +01:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2021-02-08 22:57:10 +01:00
conftest.py work on sphinx 2020-10-09 16:05:14 +02:00
CONTRIBUTING.md Update CONTRIBUTING.md 2021-02-12 13:15:41 +01:00
HISTORY.md update changelog 2020-11-24 00:04:13 +01:00
LICENSE Update LICENSE 2020-03-17 15:56:46 +01:00
poetry.lock update poetry dependencies 2021-02-02 18:52:20 +01:00
poetry.toml set poetry for in-project venv 2021-02-02 18:52:40 +01:00
pyproject.toml remove setuptools from pyproject 2021-02-02 22:47:54 +01:00
README.md updated README, update submodules script 2021-01-29 17:03:08 +01:00
setup.cfg add developer tools to requirements and gitignore 2021-01-08 22:25:48 +01:00
setup.py add scripts and dependencies 2021-01-28 18:02:07 +01:00
start.py added standalone publisher to silent commands 2021-02-02 10:40:09 +01:00
test_localsystem.txt move fusion to new structure 2021-02-12 13:02:17 +01:00

Pype

Introduction

Multi-platform open-source pipeline built around the Avalon platform, expanding it with extra features and integrations. Pype connects asset database, project management and time tracking into a single modular system. It has tight integration with ftrack, but it can also run independently.

To get all the key information about the project, go to PYPE.club

Requirements

Pype will run on most typical hardware configurations commonly found in studios around the world. It is installed on artist computer and can take up 3Gb of space depending on number of versions and other dependencies.

For well functioning ftrack event server, we recommend a linux virtual server with Ubuntu or CentosOS. CPU and RAM allocation need differ based on the studio size, but a 2GB of RAM, with a dual core CPU and around 4GB of storage should suffice.

Pype needs running mongodb server with good connectivity as it is heavily used by Pype. Depending on project size and number of artists working connection speed and latency influence performance experienced by artists. If remote working is required, this mongodb server must be accessible from Internet or cloud solution can be used. Reasonable backup plan or high availability options are recommended.

Building Pype

Windows

You will need Python 3.7 and newer and git. More tools might be needed for installing dependencies (for example for OpenTimelineIO) - mostly development tools like CMake and Visual Studio

Clone repository:

git clone --recurse-submodules git@github.com:pypeclub/pype.git

To build Pype:

  1. Run .\tools\create_env.ps1 to create virtual environment in .\venv
  2. Run .\tools\build.ps1 to build pype executables in .\build\

To create distributable Pype versions, run ./tools/create_zip.ps1 - that will create zip file with name pype-vx.x.x.zip parsed from current pype repository and copy it to user data dir, or you can specify --path /path/to/zip to force it there.

You can then point Igniter - Pype setup tool - to directory containing this zip and it will install it on current computer.

Pype is build using CX_Freeze to freeze itself and all dependencies.

macOS

You will need Python 3.7 and newer and git. You'll need also other tools to build some Pype dependencies like CMake and XCode Command Line Tools (or some other build system).

You can install XCode Command Line Tools from Terminal:

xcode-select --install

Before building Pype be sure to make CMake available in PATH:

export PATH=$PATH:/Applications/CMake.app/Contents/bin

To build Pype:

  1. Run .\tools\create_env.sh to create virtual environment in .\venv
  2. Run .\tools\build.sh to build Pype executables in .\build\

Linux

You will need Python 3.7 and newer and git. You'll need also other tools to build some Pype dependencies like CMake. Python 3 should be part of all modern distributions. You can use your package manager to install git and cmake.

For Ubuntu:

sudo apt install git cmake

For CentOS:

sudo yum install qit cmake

Note:

In case you run in error about xcb when running Pype, you'll need also additional libraries for Qt5:

For Ubuntu:

sudo apt install qt5-default

For CentOS:

sudo yum install qt5-qtbase-devel

To build Pype:

  1. Run .\tools\create_env.sh to create virtual environment in .\venv
  2. Run .\tools\build.sh to build Pype executables in .\build\

Running Pype

Pype can by executed either from live sources (this repository) or from "frozen code" - executables that can be build using steps described above.

If Pype is executed from live sources, it will use Pype version included in them. If it is executed from frozen code it will try to find latest Pype version installed locally on current computer and if it is not found, it will ask for its location. On that location pype can be either in directories or zip files. Pype will try to find latest version and install it to user data directory (on Windows to %LOCALAPPDATA%\pypeclub\pype, on Linux ~/.local/share/pype and on macOS in ~/Library/Application Support/pype).

From sources

Pype can be run directly from sources by activating virtual environment:

On Windows:

.\venv\Scripts\Activate.ps1

and running:

python start.py tray

On macOS/Linux:

source ./venv/bin/activate
python start.py tray

This will use current Pype version with sources. You can override this with --use-version=x.x.x and then Pype will try to find locally installed specified version (present in user data directory).

From frozen code

You need to build Pype first. This will produce two executables - pype_gui(.exe) and pype_console(.exe). First one will act as GUI application and will not create console (useful in production environments). The second one will create console and will write output there - useful for headless application and debugging purposes. If you need pype version installed, just run ./tools/create_zip(.ps1|.sh) without arguments and it will create zip file that pype can use.

Building documentation

Top build API documentation, run .\tools\make_docs(.ps1|.sh). It will create html documentation from current sources in .\docs\build.

Note that it needs existing virtual environment.

Running tests

To run tests, execute .\tools\run_tests(.ps1|.sh).

Note that it needs existing virtual environment.