I am reading this article in year 2024. While I appreciate the work Bradley did by writing and sharing this article I am disappointed with the content presented in this article. It's very old school even for 2020 when the article was written let alone 2024. Multiple reasons for my disappointment:
- Classic pipelines are not satisfactory for modern CI/CD approach. YAML pipelines are the way to go. In 2020 that was definitely possible and Microsoft already released the Synapse deployment ADO extension.
- Using manual publishing in Synapse Studio. This assumes that developers have to do the work and it is a contradiction with the CI/CD approach: the only thing developers should do is to integrate their changes into a Git collaboration branch. Validation they do during development and testing should be enough to justify their commits and PRs.
- The main disappointment is this entire article has really nothing to do with automating the CI/CD process for Synapse developers. All it does is copying the manually created ARM template from Git branch and exposing it as a pipeline artifact. It's absolutely unnecessary when the ARM template is already in Git and can be checked out by any DevOps pipeline at any time.
I do hope there is a more modern and really automated way of implementing CI/CD for Synapse. I am exploring it myself event those this article series is advertised by Microsoft as an "official approach". I am well familiar with how CI/CD is done for the Data Factory, and how to use a Synapse Deployment ADO extension. Would be really beneficial for the community have an updated version of this article that uses more modern CI/CD approach and toolset.