[ ๐—ค๐˜‚๐—ฒ๐˜€๐˜๐—ถ๐—ผ๐—ป ] GitHub Integration + Root Property

The .theme-check.yml file allows you to
specify a root folder for the theme files ,
however the GitHub integration doesnโ€™t
seem to use it and fails with the generic
Branch isnโ€™t a valid theme message.

While I can share & push via the theme
command , that isnโ€™t exactly optimal.

The integration doesnโ€™t have any options ,
error log or config files as far as I could see.

Am I missing something?

:wave: Hi @John, thanks for your question!

Unfortunately you are unable to use the .theme-check.yml file to customize the root folder for theme files with the GitHub integration. This is specified in the docs:

You can connect only branches that match the default Shopify theme folder structure. This structure represents a buildless theme, or a theme that has already gone through any necessary file transformations.
Folders in the repository that donโ€™t match the default theme structure are ignored.

You will need to reorganize a branch of your repository to match the expected folder structure in order to use the GitHub integration. I hope this helps :pray:

1 Like

Are there any plans to have the integration support the property in the future?

Same question for monorepo + multi-theme support

The integration code isnโ€™t a public GitHub repo of the Shopify org is it?

There are no current plans to add support for custom repository structures/monorepo support, but I will be sure to raise it with the team as a feature request!

The integration code isnโ€™t a public GitHub repo of the Shopify org is it?

Unfortunately no, it is not.

1 Like

Hi @John, depending on what you mean by a monorepo + multi-theme support, I may have a solution for you.

With the Shopify CLI itโ€™s relatively straightforward to replace the GitHub Integration with GitHub Actions. This will give you complete control over how commands are run.

Here is a set of example workflows to replicate what the GitHub integration does.

You donโ€™t need to use Shopkeeper to use the listed GitHub Actions. They can be adapted to use plain Shopify CLI commands. Shopkeeper is helpful if you want to use a blue/green deploy strategy or if you want to separate theme settings from theme code.

One repository with subdirectories each
of which may contain a different theme.

Doesnโ€™t sound like an option regardless as this wouldnโ€™t
allow for instant Shopify side updates to theme files?

Instant updates are not possible because there is no webhook Iโ€™m aware of to know when a asset is changed.

You can poll, though. This is the strategy we employ on our projects for settings. You can setup a GitHub action to run on a cron pattern and you can use the CLI to decide what you pull down.

Not an option for us then.

Thanks for your comment. it worked for me. thank you so much