mirror of
https://github.com/bitwarden/server.git
synced 2025-05-29 07:14:50 -05:00
create db on update if needed
This commit is contained in:
parent
5546d94f48
commit
371942e3e2
@ -2,6 +2,7 @@
|
|||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Data.SqlClient;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Net.Http;
|
using System.Net.Http;
|
||||||
@ -97,9 +98,20 @@ namespace Setup
|
|||||||
Console.WriteLine("Migrating database.");
|
Console.WriteLine("Migrating database.");
|
||||||
|
|
||||||
var dbPass = Helpers.GetDatabasePasswordFronEnvFile();
|
var dbPass = Helpers.GetDatabasePasswordFronEnvFile();
|
||||||
var connectionString = Helpers.MakeSqlConnectionString("mssql", "vault", "sa", dbPass ?? string.Empty);
|
var masterConnectionString = Helpers.MakeSqlConnectionString("mssql", "master", "sa", dbPass ?? string.Empty);
|
||||||
|
var vaultConnectionString = Helpers.MakeSqlConnectionString("mssql", "vault", "sa", dbPass ?? string.Empty);
|
||||||
|
|
||||||
|
using(var connection = new SqlConnection(masterConnectionString))
|
||||||
|
{
|
||||||
|
var command = new SqlCommand(
|
||||||
|
"IF ((SELECT COUNT(1) FROM sys.databases WHERE [name] = 'vault') = 0) CREATE DATABASE [vault];",
|
||||||
|
connection);
|
||||||
|
command.Connection.Open();
|
||||||
|
command.ExecuteNonQuery();
|
||||||
|
}
|
||||||
|
|
||||||
var upgrader = DeployChanges.To
|
var upgrader = DeployChanges.To
|
||||||
.SqlDatabase(connectionString)
|
.SqlDatabase(vaultConnectionString)
|
||||||
.JournalToSqlTable("dbo", "Migration")
|
.JournalToSqlTable("dbo", "Migration")
|
||||||
.WithScriptsAndCodeEmbeddedInAssembly(Assembly.GetExecutingAssembly(),
|
.WithScriptsAndCodeEmbeddedInAssembly(Assembly.GetExecutingAssembly(),
|
||||||
s => s.Contains($".DbScripts.") && !s.Contains(".Archive."))
|
s => s.Contains($".DbScripts.") && !s.Contains(".Archive."))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user