-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathdeploy.cmd
55 lines (44 loc) · 1.24 KB
/
deploy.cmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
@echo off
set SQLPACKAGE_ROOT=%~dp0.sqlpackage\
set PATH=%SQLPACKAGE_ROOT%;%PATH%
set TARGET_SERVER=localhost
set DATABASE_NAME=JobRunnerExample
if not exist "%SQLPACKAGE_ROOT%\sqlpackage.exe" (
call restore.cmd
)
echo Target server^: %TARGET_SERVER%
echo Target database^: %DATABASE_NAME%
echo Deploy with demo data? (y/n)
set /p flag=
if /i "%flag%" == "y" goto demo
if /i "%flag%" == "n" goto empty
echo Option not recognised. Please specify y/n.
goto :error
:empty
set SOURCE_FILE=.\src\JobRunner.Build\bin\Release\netstandard2.0\JobRunner.dacpac
goto deploy
:demo
set SOURCE_FILE=.\src\JobRunnerWithDemoData.Build\bin\Release\netstandard2.0\JobRunnerWithDemoData.dacpac
goto deploy
:deploy
sqlpackage.exe ^
/Action:Publish ^
/SourceFile:%SOURCE_FILE% ^
/DeployScriptPath:%DATABASE_NAME%.deployscript.sql ^
/DeployReportPath:%DATABASE_NAME%.deployreport.xml ^
/OverwriteFiles:True ^
/TargetServerName:%TARGET_SERVER% ^
/TargetDatabaseName:%DATABASE_NAME% ^
/TargetEncryptConnection:True ^
/TargetTrustServerCertificate:True ^
/p:CreateNewDatabase=True ^
/p:IgnoreWhitespace=True ^
/p:IgnoreSemicolonBetweenStatements=True
if %errorlevel% neq 0 (
echo An error occurred while running sqlpackage.exe
goto :error
)
:end
exit /b 0
:error
exit /b 1