Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Applications: New settings #220

Merged
merged 26 commits into from
Sep 12, 2024
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
827fc95
added some docstrings about new settings
iLLiCiTiT Aug 26, 2024
a938c40
Better documentation
iLLiCiTiT Aug 27, 2024
2f272ba
add missing part
iLLiCiTiT Aug 27, 2024
075f997
replace pype with AYON
iLLiCiTiT Aug 28, 2024
67db26c
Restructure the application admin docs and add more sections
MustafaJafar Aug 30, 2024
24060b8
put Example Additional Application in a tip
MustafaJafar Aug 30, 2024
580d110
add screenshot for additional applications settings
MustafaJafar Aug 30, 2024
5f318b8
remove misleading example and add another tip
MustafaJafar Aug 30, 2024
26c8783
apply suggestions from code review
MustafaJafar Aug 30, 2024
7fbfb20
fix wrong info
MustafaJafar Aug 30, 2024
30813d2
Merge branch 'main' into enhancement/new-applications-settings
MustafaJafar Sep 5, 2024
79ca382
update page header
MustafaJafar Sep 5, 2024
763c5f5
remove spaces before the question marks
MustafaJafar Sep 5, 2024
f0bf613
add a note about additional apps
MustafaJafar Sep 5, 2024
1758876
rephrase a word
MustafaJafar Sep 5, 2024
98f421b
add a note about names and labels naming
MustafaJafar Sep 5, 2024
6487b57
fix wording and some typo
MustafaJafar Sep 5, 2024
1511dc4
update `What is the syntax AYON uses for defining environments in set…
MustafaJafar Sep 5, 2024
ab45201
Update `How to update the task types list in the filter settings?` se…
MustafaJafar Sep 5, 2024
6bd703b
remove `What is host name used for?` section.
MustafaJafar Sep 5, 2024
084bee0
Merge branch 'main' into enhancement/new-applications-settings
MustafaJafar Sep 5, 2024
6d86389
add some info about `host_name`s
MustafaJafar Sep 5, 2024
987dd39
Merge branch 'main' into enhancement/new-applications-settings
MustafaJafar Sep 12, 2024
29fc2ae
Update `Application Icon` tip
MustafaJafar Sep 12, 2024
d720553
remove a comment
MustafaJafar Sep 12, 2024
344b6df
Update the Introduction section
MustafaJafar Sep 12, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 47 additions & 4 deletions website/docs/addon_applications_admin.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,22 @@ sidebar_label: Applications addon settings
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# Applications addon

## Applications
The Applications addon is responsible for setting up applications, their executable paths and their startup environments. It also allows custom launch handling for other addons.

The Addon has two layers of settings: **definitions** and **filters**:

1. **Definitions:** available only in studio settings, allows to define all possible applications and tools that can be used across all projects.
2. **Filters**: defines when certain applications and tools are used on project level. This filters whether a certain application or tool should be enabled in a certain launch context, like a specific task type or project-wide.

![settings_applications](assets/applications/admin_applications_layers.png)

## Applications definitions

In this section you can manage what Applications are available to your studio, locations of their executables, and their additional environments. In AYON context, each application that is integrated is also called a `Host` and these two terms will be used interchangeably in the documentation.

Each Host is made of two levels.
Each Application is made of two levels.
1. **Application group** - This is the main name of the application and you can define extra environments that are applicable to all versions of the given application. For example any extra Maya scripts that are not
version dependent, can be added to `Maya` environment here.
2. **Application versions** - Here you can define executables (per platform) for each supported version of
Expand Down Expand Up @@ -46,7 +56,7 @@ It is possible to add new version for any supported application. There are two w
2. **Add version** in case you want this version to be selectable individually. This is typically used for bigger releases that might not be fully compatible with previous versions. Keep in mind that if you add the latest version of an Application that is not yet part of the official AYON release, you might run into problems with integration. We test all the new software versions for compatibility and most often, smaller or bigger updates to AYON code are necessary to keep everything running.
![settings_applications](assets/settings/settings_addappversion.gif)

## Tools
## Tools definitions

A tool in AYON is anything that needs to be selectively added to your DCC applications. Most often these are plugins, modules, extensions or similar depending on what your package happens to call it.

Expand All @@ -60,4 +70,37 @@ In the image before you can see that we set most of the environment variables in
In this example MTOA will automatically set the `MAYA_VERSION`(which is set by Maya Application environment) and `MTOA_VERSION` into the `MTOA` variable. We then use the `MTOA` to set all the other variables needed for it to function within Maya.
![tools](assets/settings/tools_01.png)
iLLiCiTiT marked this conversation as resolved.
Show resolved Hide resolved

All the tools defined in here can then be assigned to projects. You can also change the tools versions on any project level all the way down to individual asset or shot overrides. So it is possible to upgrade you render plugin for a single shot, while not risking the incompatibilities on the rest of the project.
All the tools defined in here can then be assigned to projects. You can also change the tools versions on any project level all the way down to individual asset or shot overrides. So it is possible to upgrade you render plugin for a single shot, while not risking the incompatibilities on the rest of the project.

## Applications filters
These filters define the applications that will be shown in the launcher tool. It is profile based filtering that allows to filter applications for specific task types.

Using default settings will show all applications for all tasks. That can be easily changed.

Simple example:
![settings_applications](assets/applications/admin_applications_profiles.png)

In this case all tasks with `Modeling` type will show only `Maya 2025`. Any other task type will show `After Effects 2024`, `Maya 2025`, `Nuke 15.0` and `Photoshop 2024`.

:::note Default studio profile
It is recommended to have one profile without task types filter, which then acts as the standard set of applications used in the studio.
:::

## Tools filters
Tools that will be used on application launch. It is profile based filtering that allows to filter tools for a context. Tools can have more specific filtering than applications.
MustafaJafar marked this conversation as resolved.
Show resolved Hide resolved

## Legacy: Applications and Tools attributes

Settings based filtering was introduced in applications addon release 1.0.0 . Before that applications were set with `applications` attribute on project (located under project anatomy) and tools were set using `tools` attribute on Project, Folder and Task entities.

For backwards compatibility the settings do allow to switch between new settings and attributes and the legacy behavior, so we don't break existing productions without option to change it back.

:::note Legacy behavior
The legacy behavior is enabled by **disabling** the filters in settings:
iLLiCiTiT marked this conversation as resolved.
Show resolved Hide resolved
:::

By default, the settings based filters are used, but that is automatically changed to use attributes when settings from older version of applications addon are converted, so it is not needed to change it manually for backwards compatibility from older addons.

:::warning Deprecated
Please keep in mind that `applications` and `tools` attributes are deprecated, and they will be removed in future versions of applications addon. It is recommended to use the 1.0.0+ application and tool filtering instead.
:::
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.