By default, Synapse creates a new branch called workspace_publish
when publish is executed via the UI. This has two things I am uncertain about:
- The branch has no relation to or files from the collaboration branch (main)
- The branch contains only a folder with the workspace name
It feels to me like I would like to have the publish template in my main branch together with everything else. I also would like to have the templates in a different folder because having the workspace name at the root of my repository does not make sense for me. This also makes it difficult to have a common release pipeline for both the resource ARM templates and the published workspace templates, because they are managed in different branches.
I know that I can change the publish branch via publish_config.json
. There is also a Microsoft blog post that describes publishing directly to main, but this has multiple issues:
- Workspace name is kept in the root folder
- Pushing directly to main should only be possible via pull request
The way the templates are published makes me feel like they are not supposed to be merged to main. Is my feeling incorrect? Should the publish branch always stay completely separate from main? If so, why?