Best way to push a new app to production from a sandbox

Hello, new to the forum.

I have been experimenting with creating my own apps/taking existing apps and modifying them. We are a small studio so just trying to find a diy way to make this work. Most apps need just a little tweak to fit with our workflow.

Workflow so far:

  • created a copy of the pipeline configuration for a project (sandbox)
  • created an app and placed it to app-store inside the sandbox
    -linked the app so it loads on the engine startup
  • everything works and the app is loading using the sandbox

The problem:

If I push the sandbox config to Primary it only copies the /config folder. However the app is still linked to the appstore located inside the sandbox.

Workaround:

I just copied the app to the /config folder and linked it to it. It works but I feel like there is a better way.

Any suggestions?

The way to do it using tank after you pull the config changes:
<project path>/tank cache_apps
This will download any referenced apps and engines.
What kind of location descriptor are you using for your apps? dev, path, gitbranch?

Thanks for the reply, will have a look.

I am using a custom path descriptor pointing it to the config/apps directory that I have created.

Hi @FilSus !

There are several ways to go about it. I personally can recommend this workflow where you upload your custom app to SG.
So for development you would either use a path or dev descriptor and once you are ready you switch it out to point to SG. Takes a bit to get used to but is pretty flexible in the end. (The workflow can also be streamlined at a lot of places with some clever scripting) .
Hope that helps :slight_smile:

Cheers Fabian

I would have a main sgtk git repo and use branches to keep track of new features.
That way you simply have to do a pull request into the main branch and your app is available.

I used to use Fabian’s method but switched to a more proper ci/cd pipeline with github workflows to build our distributed pipeline packages.