A vendor is supplying one-off "hot fixes" and I am trying to streamline these deployments best I can. Currently I am going out to an FTP site, downloading the SQL scripts and manually deploying them against the various database environments. A few items to note:
- Often these SQL scripts have to be executed against the database in a particular order according to the vendor, however this has caused problems in the past as sometimes manual deployments have led to errors as they were not executed in the correct order.
- It is not given that these deployments will make it to production, often times deployments are not successful and redo scripts are then supplied from the vendor, effectively making these deployments throw away deployments.
- I don't think there is an internal repo or CI/CD practice in place, as the belief is that this is the job of the vendor.
- I would like to capture the output from each execution and send it to a MS Teams channel for the analyst to know the status of the deployment. (Something I've done in the past)
One thought was to create an Azure DevOps deployment and empowering the analyst to deploy these scripts when needed. My concern is the analyst would get confused on how to create a pull request in GitHub, so I'm not sure I can remove myself completely from the process as I probably would still have to download the scripts from the FTP site and drop them into GitHub and create the PR.
What can I do here to make this process easier and more reliant? These code changes almost happen daily and take a chunk of my time every day. Or am I just wasting my time trying to come up with something that doesn't might not have much value?