从 GitHub Actions 中的 VS 数据库项目生成 *.dacpac 文件
·
1 分钟阅读
Available in:
中文
·
English
·
Español
·
Français
·
Deutsch
·
Português
·
한국어
·
日本語
·
Русский
·
العربية
·
हिन्दी
·
Polski
·
Türkçe
·
Bahasa Indonesia
·
Nederlands
如果您需要使用数据库并且想要进行敏捷开发,则必须有一个流程,每当您添加或修改表、SP、函数时,它都会对其进行编译并生成数据库的部署文件。
我已经做这个方法很长时间了,我们在本地进行更改,与我们的数据库项目进行比较,然后当我们提交并推送更改时,它们会生成一个 bacpac 文件,该文件将进入数据库。
它消除了手工操作的所有麻烦,手工操作可能会导致人为错误,而在数据库中这确实是个坏消息。
数据库项目
当我们在 Visual Studio 上创建数据库项目并导入数据库时,它最终会像这样

当我们对该项目运行编译时,它将生成一个 dacpac 文件,其中包含我们的所有结构

Github 管道
现在我们已经在存储库上发布了代码,我们现在需要创建一个操作来编译该项目,生成此 dacpac 文件并将其放在我们可以下载或用于另一步骤的位置。
name: DacpacGithubActions project build
on:
push:
branches: main
jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v1
- name: Navigate to Workspace
run: cd $GITHUB_WORKSPACE
- name: Create Build Directory
run: mkdir artifacts
- name: Build Solution
run: |
msbuild.exe /t:DacpacGithubActions /p:DebugSymbols=false /p:DebugType=None /p:DeployOnBuild=true /p:WebPublishMethod=FileSystem /p:OutDir="../artifacts"
- name: Upload artifact
uses: actions/[email protected]
with:
name: DacpacGithubActionsArtifacts
path: "../artifacts"
此操作将执行一系列操作,构建解决方案并将结果放入预先创建的 artifacts 文件夹中,然后它将文件从该文件夹上传到工件。
运行管道
现在继续触发构建,结果应该如下

如果我们实际下载该工件并查看内容,这就是我们将来实现持续部署步骤时所需要的,dacpac 文件!

代码
整个项目都在 Github 上,您可以在此处找到它!
如果您有任何问题或疑问,请随时在任何社交媒体上与我联系:@emimontesdeoca(在 Twitter 中实际上是 @emimontesdeocaa,末尾有两个 aa)。您还可以在博客标题上找到我的大部分社交活动。
希望你喜欢这篇文章!呀!