Distribute
To let your artists to use OpenPype, you'll need to distribute the frozen executables to them.
Distribution consists of two parts
1. OpenPype Igniter
This is the base application that will be installed locally on each workstation. It is self contained (frozen) software that also includes all of the OpenPype codebase with the version from the time of the build.
Igniter package is around 1Gb and preparing an updated version requires you to re-build pype. That would be inconvenient for regular and quick distribution of production updates and fixes. So you can distribute those independently, without requiring you artists to re-install every time.
You can have multiple versions installed at the same time.
2. OpenPype Codebase
When you upgrade your studio pype deployment to a new version or make any local code changes, you can distribute
these changes to your artists, without the need of re-building OpenPype, by using create_zip
tool provided.
The resulting zip needs to be made available to the artists and it will override their local OpenPype install
with the updated version.
You have two ways of making this happen
Automatic Updates
Every time and Artist launches OpenPype on their workstation, it will look to a pre-defined
openPype update location for any versions that are newer than the
latest, locally installed version. If such version is found, it will be downloaded,
automatically extracted to the correct place and launched. This will become the default
version to run for the artist, until a higher version is detected in the update location again.
Manual Updates
If for some reason you don't want to use the automatic updates, you can distribute your zips manually. Your artist will then have to put them to the correct place on their disk. Zips will be automatically unzipped there.
The default locations are:
- Windows:
%LOCALAPPDATA%\pypeclub\openpype
- Linux:
~/.local/share/pypeclub/openpype
- Mac:
~/Library/Application Support/pypeclub/openpype
Staging vs. Production
You can have version of OpenPype with experimental features you want to try somewhere, but you don't want to disrupt your production. You can set such version in th Settings.
You can run OpenPype with --use-staging
argument to use staging version specified in the Settings.
note
Running staging version is identified by orange P icon in system tray.
OpenPype versioning
OpenPype version control is based on semantic versioning.
note
The version of OpenPype is indicated by the variable __version__
in the file .\openpype\version.py
.
For example OpenPype will consider the versions in this order: 3.8.0-nightly
< 3.8.0-nightly.1
< 3.8.0-rc.1
< 3.8.0
< 3.8.1-nightly.1
<3.8.1
< 3.9.0
< 3.10.0
< 4.0.0
.
See https://semver.org/ for more details.
For studios customizing the source code of OpenPype, a practical approach could be to build by adding a name and a number after the PATCH and not to deploy 3.8.0 from original OpenPype repository. For example, your builds will be: 3.8.0-yourstudio.1
< 3.8.0-yourstudio.2
< 3.8.1-yourstudio.1
.
Versions of Igniter and those coming in zips are compatible if they match major and minor version - 3.13.4
is compatible with 3.13.1
but not with 3.12.2
or 3.14.0
.