Deploying SQL Server dacpac scripts through AWS codepipeline/codebuild - sql-server

We are migrating an application from Azure to AWS and we have migrated the SQL Server database to AWS RDS SQL Server database.
In AWS we use codepipeline / codebuild to deploy our application and which is pretty much automated when a push happens to github we have an application deployed. Similarly we also want any DB changes to also be deployed via pipeline.
We will have the dacpac scripts available when we build our project and all we need is to deploy these dacpac scripts from codepipeline to AWS RDS, so I researched to see if this is possible and how to achieve, but I got little help. If any of you have implemented this or are aware, can please help to share your experience, would be highly appreciated.
Thanks in advance.

Related

Dokerizing .NET Web API (with EF Core) with SQL Server Database in order to deploy on DigitalOcean

Im trying to dokerize my .NET Web API application that is connected to an SQL Server database in order to be able to deploy it on Digital Ocean.
Since DigitalOcean does not support .NET applications, I need to dockerize it in order to deploy it there. The app itself is connected to a SQL Server Database and when I dockerize it I cannot access the database. The database uses "Windows Authentication" in SQL Server and it seems that because of this, it is harder to dockerize and conncect (through containers) the .NET application to the database.
My question is:
Is it necessary to make this connection and dockerize both the .NET application and the SQL Server Database or is this something that is not required to deploy the application since the database will have to be migrated to DigitalOcean.
I'm looking for someone that is familiar with DigitalOcean and knows about application deployment there.
Thank you!

How to create SQL Server Version control in Dev Ops Azure

I am a 1 man team, more dev's coming on board, I have created a few on Premise SQL DBs; I have a Azure SQL DB managed instance and Azure Devops account setup
Currently:
I use SSDT -->Tools--> SQL Server: to manage the data and Schema comparisons , make sure it is in sync, On-Premise and Azure managed instance (as a backup at present, managed instance is not used for anything else)
I want to do
To manage the code for multiple devs,
I want to setup Azure SQL DB managed instance as production
SSDT or Git hub for version control(manage check-in / check out of SQL objects, we are all in sync)
Local on premise version as the development area, sync in with prod, use TFVC (SSDT) as tool to manage
the code conflicts , make sure all devs are working off the same DB
Q: Can I link my on premise SQL DB to DevOps source control , then links to SQL Azure managed DB? Can I do this with SSDT / GIT hub or do I need both?
Any step by step tutorials to set this up? In SSDT I am connected to my on premise SL db and to DevOps Repo , finding it difficult to figure out how to establish the link between the two
Getting overwhelmed with all the acronyms and 101 different products you can use (state based approach, DACPAC files, YAML , arm template , octopus deploy, redgate, dacfx,)
Cannot find anything online so far to show me how to setup from the ground up
Q: Can I link my on premise SQL DB to DevOps source control , then links to SQL Azure managed DB? Can I do this with SSDT / GIT hub or do I need both?
You have to install a self-hosted agent to access your on-premises instances
Then the pipeline flow can be built this way:
Build DacPac -> Deploy to Test (On-Premises) -> Deploy to Managed Instance (Prod)
Other points:
Since you are starting a new project, consider to use YAML pipelines.
Also, SSDT, starting VS 2019, is not suitable anymore for free use in a commercial environment. You have to get Professional or Enterprise license.
As the alternative, cross-platform Azure Data Studio + Database Project add-on
And some of the concepts blogged by me earlier:
https://www.alexvolok.com/2020/azure-devops-sql-server-dba-creating-database-project/
https://www.alexvolok.com/2020/azure-devops-for-sql-server-dba-automating-deployments/

Automation for SQL schema changes on AWD RDS

We are using SQL DB for our application and these both are hosted on AWS. We have already setup CI/CD pipeline for application as per environment.
So, my question is how can we automate SQL schema changes using AWS? I know there are lot of third party tools are available in the marked, but is it possible using AWS managed services?
Thanks for the help !

Struggles deploying an umbraco built blog

I'm struggling deploying an umbraco built blog through Microsoft Azure.
I have a finished Umbraco database i exported to Microsoft Azure SQL Database.
I have a finished the blog i've deployed to an Azure app service.
I have connected the blog to the Azure SQL Database connectionstring.
But when i publish my website i get redirected to an Umbraco first-time-install. Instead of my Homepage with all the contents. And i know the tables are in the Azure SQL Database through MSSQL.
The blog works perfectly on localhost. I run IIS if that could be something that makes a difference.
Any ideas what i miss?
Is it saying you need to upgrade or install? If it is install then your connection string is either wrong or your database is not an Umbraco database.

Database Schema Migration on Azure with Git Deployment

I am looking for a means to use Git deployment on Windows Azure together with either their MySQL or other database solutions.
I need a means of migrating database schema changes as part of deployment - does Azure provide support for this without using Visual Studio or .NET.
You basically want to use Azure as a Continuous Integration (CI) platform and my view is that Azure by itself just isn't there yet.
A basic git based CI scenario would involve the following steps.
Your src code and any database schema/data updates are pushed to a central git repository like GitHub. [Feature available]
GitHub would then push the updates to Azure. [Not supported in Azure until they support GitHub hooks]
Azure compiles and deploys the code. [Supported]
Azure updates the database from sql files pulled from the repo (remember, this needs to be automated). [Not supported]
Azure reports any error in running the database or web application. [Supported]
Azure runs user provided integration tests to check more thoroughly specific functionality and reports the status of those tests to the user [Not supported].
Azure allows you to roll back to a previous deployment snapshot [Partly supported. Snapshots are not based on git commits for instance].
I might be wrong on some of those points or new features might be added since I've written this. Corrections are very welcomed and I'll try to update the list accordingly.
I am not sure how much experiences you have with Windows Azure Websites, however when you are creating a Windows Azure Websites, you have ability to use SQL Azure Database or MySQL cloud database directly integrated with your Windows Azure Websites.
So if you will use SQL Azure Database then there are several ways you can migrate your DB following the link here:
Migrating Databases to Windows Azure SQL Database (formerly SQL Azure)
To manage MySQL you can use Local Web Server to do it. The way I have done is to use PHP, the MySQL Command-Line Tool (part of MySQL), and a web server set up on my local machine, and that I have enabled the PDO extension for MySQL. This way I can manager my MySQL directly from my own local machine and the details are explain at the bottom of this article:
Create a PHP-MySQL Windows Azure web site and deploy using Git.
Also the SQL part you can write in Workbench if you use MySQL and Oracle SQL Developer if you use Oracle SQL.
Finally Git Deployment allows you to deploy your any kind of application directly to Windows Azure without using VSx.

Resources