Skip to content
This repository was archived by the owner on Nov 20, 2023. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
7 changes: 1 addition & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
language: python

python:
- "2.7"
- "3.8"

env:
global:
Expand All @@ -28,11 +28,6 @@ before_install:
- sudo apt-get install -y pandoc

install:
#
# install pyside - from https://stackoverflow.com/questions/24489588
- sudo apt-get install libqt4-dev
- pip install PySide --no-index --find-links https://parkin.github.io/python-wheelhouse/;
- python ~/virtualenv/python${TRAVIS_PYTHON_VERSION}/bin/pyside_postinstall.py -install
#
# jekyll dependencies
- bundle install --gemfile=./tk-doc-generator/Gemfile --deployment
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@

# [developer.shotgunsoftware.com](http://developer.shotgunsoftware.com/)

Welcome to the source repository for [developer.shotgunsoftware.com](http://developer.shotgunsoftware.com/). This repository holds the markdown source and configuration used to generate the Shotgun developer site.
Welcome to the source repository for [developer.shotgunsoftware.com](http://developer.shotgunsoftware.com/). This repository holds the markdown source and configuration used to generate the {% include product %} developer site.

## How does it work?

The Shotgun Developer site uses *continous integration*. What you see in the master branch of this repository is reflected on the developer website. You create github issues and pull requests in order to make changes to the Repository.
The {% include product %} Developer site uses *continous integration*. What you see in the master branch of this repository is reflected on the developer website. You create github issues and pull requests in order to make changes to the Repository.

The site uses the [Toolkit Documentation Generation system](https://github.com/shotgunsoftware/tk-doc-generator) to convert markdown, sphinx and other content to a website, complete with search, table of contents etc.

Expand Down
4 changes: 2 additions & 2 deletions docs/en/guides/pipeline-integrations.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ lang: en

# Pipeline Integrations

Shotgun's pipeline integrations bring Shotgun data to your artists. Customizable UIs within popular content creation software give artists out-of-the-box tools to view information about their tasks, read and add notes, and share files with teammates. Pipeline integrations are build on the Shotgun Toolkit platform, and developers can use the Toolkit API to extend functionality or create custom Toolkit apps.
{% include product %}'s pipeline integrations bring {% include product %} data to your artists. Customizable UIs within popular content creation software give artists out-of-the-box tools to view information about their tasks, read and add notes, and share files with teammates. Pipeline integrations are build on the {% include product %} Toolkit platform, and developers can use the Toolkit API to extend functionality or create custom Toolkit apps.

This section contains learning materials to help you get started as you administer a Shotgun pipeline. You'll find guides to configuring your pipeline and managing your production file system, a tutorial for building a basic vfx pipeline, and resources for writing your own pipeline tools.
This section contains learning materials to help you get started as you administer a {% include product %} pipeline. You'll find guides to configuring your pipeline and managing your production file system, a tutorial for building a basic vfx pipeline, and resources for writing your own pipeline tools.
4 changes: 2 additions & 2 deletions docs/en/guides/pipeline-integrations/administration.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ lang: en

# Administration

Shotgun's pipeline integrations offer a vast set of customization options. Getting your studio's desired pipeline up and running can be a combination of configuration, running command line tools, and ensuring that the Shotgun tools work in your studio environment.
{% include product %}'s pipeline integrations offer a vast set of customization options. Getting your studio's desired pipeline up and running can be a combination of configuration, running command line tools, and ensuring that the {% include product %} tools work in your studio environment.

This section contains information about administering your studio's Shotgun Toolkit pipeline.
This section contains information about administering your studio's {% include product %} Toolkit pipeline.
Original file line number Diff line number Diff line change
Expand Up @@ -21,60 +21,60 @@ lang: en
## Auto updates
### What parts auto update?

By default Shotgun Desktop will automatically check for updates, and install them to the local machine if it finds any.
By default {% include product %} Desktop will automatically check for updates, and install them to the local machine if it finds any.

It checks for updates on two components:

- `tk-framework-desktopstartup` - A frame work which aids the launch of Shotgun Desktop.
- `tk-framework-desktopstartup` - A frame work which aids the launch of {% include product %} Desktop.
- `tk-config-basic` - The default site config.

The configuration acts as a manifest for the versions of the apps, engines, frameworks, and core version that should be used by Shotgun Desktop.
The configuration acts as a manifest for the versions of the apps, engines, frameworks, and core version that should be used by {% include product %} Desktop.
By updating the config, you are potentially updating any of these components as well.
Any updates that are found are downloaded and stored in the user's local cache, rather than modifying the original Shotgun Desktop installed files.
Any updates that are found are downloaded and stored in the user's local cache, rather than modifying the original {% include product %} Desktop installed files.

Shotgun Create as an application has it's own update mechanism separate from Shotgun Desktop which is not covered here.
However the integration features provided in Shotgun Create work in a similar way, and will also auto update `tk-config-basic` into the same user cache.
{% include product %} Create as an application has it's own update mechanism separate from {% include product %} Desktop which is not covered here.
However the integration features provided in {% include product %} Create work in a similar way, and will also auto update `tk-config-basic` into the same user cache.

### What doesn't auto update?

- If you have taken over a site configuration, then it won't check for newer `tk-config-basic` updates but more on that [further down](#disabling-updates-at-a-project-or-site-level).

- Any projects that aren't using the default site configuration (I.e. a project where the Toolkit advanced setup wizard has been run on it.), will not have their configuration auto updated.

- Resources such as Python and QT that come bundled with Shotgun Desktop, don't auto update.
We occasionally release new Shotgun Desktop installers when we need to update these parts.
- Resources such as Python and QT that come bundled with {% include product %} Desktop, don't auto update.
We occasionally release new {% include product %} Desktop installers when we need to update these parts.

## Running the integrations offline

### Initial setup

If your studio has restricted internet access or no internet access then you will need to ensure that you have all the required parts cached locally.
You will still need one machine that can connect to the internet in order to download Shotgun Create or Shotgun Desktop.
You will still need one machine that can connect to the internet in order to download {% include product %} Create or {% include product %} Desktop.

Shotgun Desktop comes prepackaged with all the dependencies required to run the basic integrations.
Whilst Shotgun Create also comes bundled with the dependencies, it requires you to follow the steps mentioned in [managing updates](#managing-updates) as well.
{% include product %} Desktop comes prepackaged with all the dependencies required to run the basic integrations.
Whilst {% include product %} Create also comes bundled with the dependencies, it requires you to follow the steps mentioned in [managing updates](#managing-updates) as well.

When you start either of them up, it will automatically try to look for updates, but if it cannot connect to the Shotgun App Store, it will simply run the most recent version that exists locally.
When you start either of them up, it will automatically try to look for updates, but if it cannot connect to the {% include product %} App Store, it will simply run the most recent version that exists locally.

It is recommended that you follow the [managing updates](#managing-updates) steps bellow after installing Shotgun Desktop, as the components bundled with the installer may not be the latest.
It is recommended that you follow the [managing updates](#managing-updates) steps bellow after installing {% include product %} Desktop, as the components bundled with the installer may not be the latest.

{% include info title="Note" content="Depending on your network setup, it can sometimes get stuck looking for updates online even though it won't be able to access them.
In this situation you can set the environment variable `SHOTGUN_DISABLE_APPSTORE_ACCESS` to `\"1\"` to stop it from trying." %}

{% include info title="Note" content="You will still need to be able to connect to your Shotgun site. When we say offline we are talking about not being able to connect to our app store to download updates." %}
{% include info title="Note" content="You will still need to be able to connect to your shotgun site. When we say offline we are talking about not being able to connect to our app store to download updates." %}

### Managing updates

To update the `tk-framework-desktopstartup` component, you will need to [download the latest version](https://github.com/shotgunsoftware/tk-framework-desktopstartup/releases), and set the environment variable
`SGTK_DESKTOP_STARTUP_LOCATION` to point to its location on disk, (This only applies to Shotgun Desktop.)
`SGTK_DESKTOP_STARTUP_LOCATION` to point to its location on disk, (This only applies to {% include product %} Desktop.)

For the `tk-config-basic` component it's a bit more tricky, due to all its dependencies.

1. Run Shotgun Desktop or Shotgun Create on a workstation connected to the internet. When it starts up, the latest upgrades will be automatically downloaded.
1. Run {% include product %} Desktop or {% include product %} Create on a workstation connected to the internet. When it starts up, the latest upgrades will be automatically downloaded.
(Ensure `SHOTGUN_DISABLE_APPSTORE_ACCESS` is not set on this machine.)
2. Copy the bundle cache to a shared location where all machines can access it.
3. Set the `SHOTGUN_BUNDLE_CACHE_FALLBACK_PATHS` environment variable on offline machines to point to this location.
4. When Shotgun Desktop or Shotgun Create starts up on offline machines, they will pick up the latest upgrades that are available in the bundle cache.
4. When {% include product %} Desktop or {% include product %} Create starts up on offline machines, they will pick up the latest upgrades that are available in the bundle cache.

{% include info title="Warning" content="Depending on your network setup, it can sometimes get stuck looking for updates online even though it won't be able to access them.
In this situation you can set the environment variable `SHOTGUN_DISABLE_APPSTORE_ACCESS` to `\"1\"` to stop it from trying." %}
Expand All @@ -88,31 +88,31 @@ In this situation you can set the environment variable `SHOTGUN_DISABLE_APPSTORE
Follow these steps to disable automatic updates for the integrations.

1. Determine the version you want to stay at. You can find the integration releases [here](https://support.shotgunsoftware.com/hc/en-us/sections/115000020494-Integrations).
2. In Shotgun, create a Pipeline Configuration entity either on a project or on a global page, with the following fields populated (In this example, we are locking down the config to use v1.0.36 of the integrations):
2. In {% include product %}, create a Pipeline Configuration entity either on a project or on a global page, with the following fields populated (In this example, we are locking down the config to use v1.0.36 of the integrations):

1. Name: `Primary`
2. Project: Leave empty if you want updates disabled for all projects, or pick a specific project if you only want to lock down a single project.
3. Plugin ids: `basic.*`
4. Descriptor: `sgtk:descriptor:app_store?name=tk-config-basic&version=v1.0.36`

![Pipeline Configuration entity with a setup for a project with disabled updates.](images/offline-and-disabled-auto-updates/freeze-all-projects.jpg)
3. Start Shotgun Desktop, and if you left the project field empty then Shotgun Desktop will have switched over to using this version if it wasn't already doing so.
3. Start {% include product %} Desktop, and if you left the project field empty then {% include product %} Desktop will have switched over to using this version if it wasn't already doing so.

![Shotgun Desktop About](images/offline-and-disabled-auto-updates/shotgun-desktop-about.png)
![{% include product %} Desktop About](images/offline-and-disabled-auto-updates/shotgun-desktop-about.png)

If you set a project, then only that project will be affected and you won't see a change in the Shotgun Desktop about window.
If you set a project, then only that project will be affected and you won't see a change in the {% include product %} Desktop about window.
4. [Optional] To lock the version of `tk-framework-desktopstartup` you will need to [download the latest version](https://github.com/shotgunsoftware/tk-framework-desktopstartup/releases), and set the environment variable
`SGTK_DESKTOP_STARTUP_LOCATION` to point to its location on disk, (This only applies to Shotgun Desktop.)
`SGTK_DESKTOP_STARTUP_LOCATION` to point to its location on disk, (This only applies to {% include product %} Desktop.)

It's The majority for the functionality is controlled by the config which can be locked down with the previous steps, however as mentioned in the "what parts auto update?" section, the
component is also updated and that is handled separately from the config. This also only applies to Shotgun Desktop.
component is also updated and that is handled separately from the config. This also only applies to {% include product %} Desktop.

#### Good to know

- You don't need to download the release of the configuration manually, Shotgun Desktop will handle this when it launches or you enter the project.
- You don't need to download the release of the configuration manually, {% include product %} Desktop will handle this when it launches or you enter the project.
- `basic.*` means that all plugins in the basic configuration will pick up this override. If, for example, you wanted to freeze the Nuke and Maya integrations only, you could specify `basic.maya`, `basic.nuke`.
- To test, you can create a duplicate of this Pipeline Configuration entity, and add your username to the `User Restrictions` field. This will restrict the entity such that it's only available to you and won't impact other users. You can then launch Maya or some other software from this duplicate configuration and confirm that it’s running the expected integrations versions.
- Leaving the project field blank is what we call a site configuration. Shotgun Desktop uses the site configuration, as it operates outside of projects. When you select a project in Shotgun Desktop it then loads the project configuration as well.
- Leaving the project field blank is what we call a site configuration. {% include product %} Desktop uses the site configuration, as it operates outside of projects. When you select a project in {% include product %} Desktop it then loads the project configuration as well.

- The Flame integration is namespaced `basic.flame`, and so is implied to be part of `basic.*`.
However, the Flame integration isn't actually included in the basic config. So, if you are using Flame for a project and implement this override, the Flame integration will stop working.
Expand Down Expand Up @@ -140,10 +140,10 @@ You can

When it comes to updating your configuration, you may wish to test out the newer version before rolling it out to all your users.

1. Duplicate the Pipeline Configuration entity in Shotgun by right-clicking on it and selecting **"Duplicate Selected"**.
1. Duplicate the Pipeline Configuration entity in {% include product %} by right-clicking on it and selecting **"Duplicate Selected"**.
2. Name the cloned config “update test”, and assign yourself to the User Restrictions field.
3. You will now begin to use this Pipeline Configuration.
4. Change the descriptor to point to the version you wish to test.
4. You can invite any users you want to partake in testing by adding them to the `User Restrictions` field.
5. Once you are happy with testing, simply update the main Pipeline Configuration to use that version.
6. Once users restart Shotgun Desktop and relaunch any currently open software with the Shotgun integration running, the update will be picked up.
6. Once users restart {% include product %} Desktop and relaunch any currently open software with the {% include product %} integration running, the update will be picked up.
14 changes: 7 additions & 7 deletions docs/en/guides/pipeline-integrations/development.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ lang: en
## What is Toolkit?

Toolkit is the platform that underpins our pipeline integrations.
For example, If you are using the Shotgun Panel app in Maya or launching the Publish app from Shotgun Create, you are using tools built upon the Toolkit platform.
For example, If you are using the {% include product %} Panel app in Maya or launching the Publish app from {% include product %} Create, you are using tools built upon the Toolkit platform.

## How can I develop with Toolkit?

Expand All @@ -22,13 +22,13 @@ There are a number of different ways in which you can develop with Toolkit.

To do any of these things it's important to understand how to work with the Toolkit API.

Shotgun as a whole has three main API's
- [Shotgun Python API](https://developer.shotgunsoftware.com/python-api)
- [Shotgun REST API](https://developer.shotgunsoftware.com/rest-api/)
- [Shotgun Toolkit API](https://developer.shotgunsoftware.com/tk-core)
{% include product %} as a whole has three main API's
- [{% include product %} Python API](https://developer.shotgunsoftware.com/python-api)
- [{% include product %} REST API](https://developer.shotgunsoftware.com/rest-api/)
- [{% include product %} Toolkit API](https://developer.shotgunsoftware.com/tk-core)

The Toolkit API is a Python API, designed to be used alongside the Shotgun Python API or REST API, and is not a replacement for them.
Although the Toolkit API does have some wrapper methods, in general whenever you need to access data from your Shotgun site you will use the Shotgun Python or REST APIs instead.
The Toolkit API is a Python API, designed to be used alongside the {% include product %} Python API or REST API, and is not a replacement for them.
Although the Toolkit API does have some wrapper methods, in general whenever you need to access data from your {% include product %} site you will use the {% include product %} Python or REST APIs instead.

The Toolkit API instead focuses on the integrations and management of file paths.
Some Toolkit apps and frameworks also [have their own APIs](../../reference/pipeline-integrations.md).
Expand Down
Loading