Recommended way to share/update pipeline configurations between projects?

Hi Nik, welcome to the forums. Great questions!

  1. It’s up to you really. Certainly, you won’t need to copy the files to each project, you will just need to upload a copy of the config to the site PipelineConfiguration entity. However, it may be beneficial to have a test project, with a config, so you can test changes outside of production.
    Personally I would be using git/GitHub where I would keep my source config and track the changes, then zip up the config from the repo and upload that.

  2. Yeah, its a good point, perhaps that example is a bit distracting. You don’t need a projects/ bit in front of the name. You can optionally define a nested structure in the name, by separating it with /s. Doing so allows you to add additional folders after the root but before the main project folder.
    For example, you might wish to split your project folders out by client, or type of project: vfx_projects/my_vfx_project and game_projects/my_game_project.

  3. Yes, that is correct, you will need to delete the PipelineConfiguration entity from your Shotgun site for that project. Maybe hold off on deleting the config on disk as well at first, so that you can check it all goes smoothly, otherwise, you can always restore the PipelineConfiguration back from the trash, and it should go back to how it was.
    3a. No, the projects should already have a tank_name if they were previously set up, clearing out the PipelineConfiguration entity should be all you need to do (assuming the site config is exactly the same in terms of schema). Though I recommend testing against the process with a dummy project just to make sure you feel comfortable with it.

  4. If you upload the config, you should not need to set the descriptor. If you do it will take precedence over your uploaded config.

I hope that helps? You’ve probably seen these already, but I just thought I’d link them here as well: