So, I'm creating a SQL Server versioned project. We have targets using Windows, Linux and are moving to a containerized environment for testing. SQL projects in Visual Studio can only be built in Windows and we've had some troubles with version conflicts (several customers and internal deployments and growing). So moving to a number list of version scripts... we need a way to run it with all of the above environments.
I created the above module to better support those use cases for script deploys. The export scrips (baseline) from the sql project will only really run via sqlcmd, not to mention issues with UTF8/16le, and windows uses -v for variables and linux uses environment variables... this handles all of those use cases.
About a week of very heavy work with thorough test coverage (about 5 files, mostly small/simple utilities are excluded). There's also a set of integration tests that will create a docker container, and populate it with both a local sqlcmd (if available) and the sqlcmd inside the sql server container instance.