【Azure DevOps系列】Azure DevOps EFCore命令式脚本部署到SQL数据库
2020-12-09 21:22
676 查看
构建迁移脚本
为了构建迁移脚本,我们将需要使用
EF Tools for Command Line Interface。这些工具在
Microsoft.EntityFrameworkCore.Tools提供。
- 迁移脚本
现在我们将通过
dotnet ef migrations script –p <path to your csproj with migrations> -o $(Build.ArtifactStagingDirectory)\migrations\scripts.sql –i来迁移我们的脚本,在如下代码片段中我将脚本进行迁移出来并且输出到指定的路径
-o $(Build.ArtifactStagingDirectory)/migrations/scripts.sql中,
-i代表生成可用于任何迁移的数据库的脚本。
- task: CmdLine@2 displayName: 'build efcore migrations' inputs: script: | dotnet ef migrations script --project host/EasyAbp.PrivateMessaging.Web.Unified/EasyAbp.PrivateMessaging.Web.Unified.csproj -o $(Build.ArtifactStagingDirectory)/migrations/scripts.sql -i
选项 | Short | 描述 |
---|---|---|
--output <FILE> |
-o | 要写入脚本的文件 |
--idempotent |
-i | 生成可用于任何迁移的数据库的脚本。 |
- 发布脚本
添加一个发布任务将脚本进行发布,发布到指定的路径
$(Build.ArtifactStagingDirectory)/migrations/scripts.sql
- task: PublishBuildArtifacts@1 inputs: PathtoPublish: '$(Build.ArtifactStagingDirectory)/migrations/scripts.sql' ArtifactName: 'drop' publishLocation: 'Container'
部署脚本
下面是我们的部署管道,本章还是主要介绍数据库脚本部署。
Sqlserver部署任务如下所示:
该任务主要是使用生成的sql脚本将其执行并恢复添加到我们的数据库服务器中,该任务脚本如下所示:
steps: - task: SqlDacpacDeploymentOnMachineGroup@0 displayName: 'Deploy using : sqlQuery' inputs: TaskType: sqlQuery SqlFile: '$(System.DefaultWorkingDirectory)/**/scripts.sql' ServerName: '' DatabaseName: 'PrivateMessaging_Unified' AuthScheme: sqlServerAuthentication SqlUsername: '' SqlPassword: '' enabled: false
Reference
https://docs.microsoft.com/zh-cn/ef/core/miscellaneous/cli/dotnet
相关文章推荐
- 【Azure DevOps系列】Azure DevOps使用Docker将.NET应用程序部署在云服务器
- Azure实践系列 1:部署和基本配置Azure AD 推荐
- PHP on Windows Azure 入门教学系列(3) ——在Windows Azure中部署Wordpress
- 初码-Azure系列-记一次从阿里云到Azure的迁移和部署
- windows下自动上传war到Linux服务器,自动部署,自动重启Tomcat的系列脚本
- 运维与自动化系列③自动化部署基础与shell脚本实现
- PHP on Windows Azure 入门教学系列(3) ——在Windows Azure中部署Wordpress
- 运维与自动化系列③自动化部署基础与shell脚本实现
- 【Azure DevOps系列】什么是Azure DevOps
- 基于Azure的软件部署和开发系列沙龙
- 【自动构建系列】自动部署环境的shell脚本
- PHP on Windows Azure 入门教学系列(3) ——在Windows Azure中部署Wordpress
- Azure DevOps 构建部署
- 初码-Azure系列-记一次从阿里云到Azure的迁移和部署
- PHP on Windows Azure 入门教学系列(3) ——在Windows Azure中部署Wordpress
- 【初码干货】【Azure系列】1、再次感受Azure,体验Windows Server 2016并部署BlogEngine.NET...
- PHP on Windows Azure 入门教学系列(3) ——在Windows Azure中部署Wordpress
- 在Azure上部署你的SQL数据库
- Powershell脚本检测Azure账号是否登陆,资源组是否创建,并部署ARM template
- PHP on Windows Azure 入门教学系列(3) ――在Windows Azure中部署Wordpress