Use github (or GitLab) as a Toolkit app source

I’m trying to setup tk-multi-launchapp in our config/env/includes/app_locations.yml file to point to a GitHub or GitLab public repo wihtout any luck. I’m following the documentation here:
https://developer.shotgridsoftware.com/tk-core/descriptor.html#tracking-against-tags-in-git

For testing purposes I am pointing to the official GitHub repo and latest tag v0.12.1 .
When opening a project in ShotGun Desktop, it shows an empty list of Software.

The log says it can’t find the application:

2022-02-02 17:22:39,600 [4988 ERROR sgtk.env.project.tk-desktop] Cannot start app! tk-multi-launchapp v0.12.1 does not exist on disk.

multi-launchapp.location:
  type: git
  version: v0.12.1
  path: https://github.com/shotgunsoftware/tk-multi-launchapp.git

Am I doing something wrong ?

Any help would be greatly appreciated, thanks.

Don’t know what the issue is.

Having a zip files hosted on shotgrid is the easiest solution. This is for the config but also works for custom apps.
Have a github action that creates and upload the config from the Main branch works quite nice.

In the console when you start the desktop app there should be an error.

We were hoping we wouldn’t have to create a CI job to zip and upload a file to SG but we’ll go that route if we can’t get to the bottom of this. Thanks for your response.

Have you tried ./tank cache_apps?

Just tried that but I still get the same error.

What is the error? “does not exist on disk”?

Yes exactly.
ERROR sgtk.env.project.tk-desktop] Cannot start app! tk-multi-launchapp v0.12.1 does not exist on disk.

I have not used distributed configurations yet, so I don’t know how apps are installed.
Have you tried the url with a git protocol, git://?

If you use a git descriptor, you should use git url, e.g. git@github.com:shotgunsoftware/tk-multi-launchapp.git. But then you need to have ssh keys set to have access to git, even if the repo is public.
An alternative is to use a github_release descriptor:
Descriptors — tk-core v0.20.8 documentation
This does not require credentials to access the public repo.
Hope it helps.

2 Likes

Enable debug logging and reload the project in SG Desktop.
Then have a look at the log.

Are you sure the git command is available in the PATH on the machine you are trying to load this?
Because SG Desktop will use the git executable from your PATH, it’s not distributed with Sg Desktop.
Usually if the git command is not available then SG Desktop can’t clone the git link and therefor you get that message that the files are not on disk.

1 Like