Source Control integration
In working through our deployment pipeline plans, we want to use multiple Matillion instances, and use an automated pipeline (in Jenkins) pull projects from one instance (dev), commit them to source control, and on approval, push them to the another instance (prod).
This follows the basic flow discussed in the linked blog posts.
However, I'm seeing a few problem points which individually aren't blockers, but in combination are causing me pain.
1. Cannot import an existing object (project, version or job)
2. Cannot delete the 'default' version of a project.
3. Deleting a project deletes the Group above it if there are no other projects in the group.
My solution to 1 was to export at the project/version level, as that would keep me in the same group/project, and allow for Matillion 'version' to track the branch name in git.
But then 2 blocks me from ever pushing updates back to 'master', because I have to delete the project to replace the 'default' version via API. and because the JSON output is *different* if I export at the project level than the project/version level, I can't use the version aware export to recreate the project.