Browse Source
* SM-802: Add SecretsManagerBetaColumn SQL migration and Org table update * SM-802: Run EF Migrations for SecretsManagerBeta * SM-802: Update the two Org procs and View, and move data migration to a separate file * SM-802: Add missing comma to Organization_Create * SM-802: Remove extra GO statement from data migration script * SM-802: Add SecretsManagerBeta to OrganizationResponseModel * SM-802: Move SecretsManagerBeta from OrganizationResponseModel to OrganizationSubscriptionResponseModel. Use sp_refreshview instead of sp_refreshsqlmodule in the migration script. * SM-802: Remove OrganizationUserOrganizationDetailsView.sql changes * SM-802: Remove SecretsManagerBetaColumn migration * SM-802: Add SecretsManagerBetaColumn migration * SM-802: Remove OrganizationUserOrganizationDetailsView update * SM-802: Remove migration * SM-802: Rename SecretsManagerBetaColumn migration files to have the correct date (now that this has passed QA) * SM-802: Add SecretsManagerBeta migrationpull/3136/head
16 changed files with 7144 additions and 8 deletions
@ -0,0 +1,305 @@
@@ -0,0 +1,305 @@
|
||||
-- Add SecretsManagerBeta Column |
||||
IF COL_LENGTH('[dbo].[Organization]', 'SecretsManagerBeta') IS NULL |
||||
BEGIN |
||||
ALTER TABLE |
||||
[dbo].[Organization] |
||||
ADD [SecretsManagerBeta] BIT NOT NULL |
||||
CONSTRAINT [DF_Organization_SecretsManagerBeta] |
||||
DEFAULT (0); |
||||
END |
||||
GO |
||||
|
||||
-- Insert value in column 'SecretsManagerBeta' in Organization_Create |
||||
CREATE or ALTER PROCEDURE [dbo].[Organization_Create] |
||||
@Id UNIQUEIDENTIFIER OUTPUT, |
||||
@Identifier NVARCHAR(50), |
||||
@Name NVARCHAR(50), |
||||
@BusinessName NVARCHAR(50), |
||||
@BusinessAddress1 NVARCHAR(50), |
||||
@BusinessAddress2 NVARCHAR(50), |
||||
@BusinessAddress3 NVARCHAR(50), |
||||
@BusinessCountry VARCHAR(2), |
||||
@BusinessTaxNumber NVARCHAR(30), |
||||
@BillingEmail NVARCHAR(256), |
||||
@Plan NVARCHAR(50), |
||||
@PlanType TINYINT, |
||||
@Seats INT, |
||||
@MaxCollections SMALLINT, |
||||
@UsePolicies BIT, |
||||
@UseSso BIT, |
||||
@UseGroups BIT, |
||||
@UseDirectory BIT, |
||||
@UseEvents BIT, |
||||
@UseTotp BIT, |
||||
@Use2fa BIT, |
||||
@UseApi BIT, |
||||
@UseResetPassword BIT, |
||||
@SelfHost BIT, |
||||
@UsersGetPremium BIT, |
||||
@Storage BIGINT, |
||||
@MaxStorageGb SMALLINT, |
||||
@Gateway TINYINT, |
||||
@GatewayCustomerId VARCHAR(50), |
||||
@GatewaySubscriptionId VARCHAR(50), |
||||
@ReferenceData VARCHAR(MAX), |
||||
@Enabled BIT, |
||||
@LicenseKey VARCHAR(100), |
||||
@PublicKey VARCHAR(MAX), |
||||
@PrivateKey VARCHAR(MAX), |
||||
@TwoFactorProviders NVARCHAR(MAX), |
||||
@ExpirationDate DATETIME2(7), |
||||
@CreationDate DATETIME2(7), |
||||
@RevisionDate DATETIME2(7), |
||||
@OwnersNotifiedOfAutoscaling DATETIME2(7), |
||||
@MaxAutoscaleSeats INT, |
||||
@UseKeyConnector BIT = 0, |
||||
@UseScim BIT = 0, |
||||
@UseCustomPermissions BIT = 0, |
||||
@UseSecretsManager BIT = 0, |
||||
@Status TINYINT = 0, |
||||
@UsePasswordManager BIT = 1, |
||||
@SmSeats INT = null, |
||||
@SmServiceAccounts INT = null, |
||||
@MaxAutoscaleSmSeats INT= null, |
||||
@MaxAutoscaleSmServiceAccounts INT = null, |
||||
@SecretsManagerBeta BIT = 0 |
||||
AS |
||||
BEGIN |
||||
SET NOCOUNT ON |
||||
|
||||
INSERT INTO [dbo].[Organization] |
||||
( |
||||
[Id], |
||||
[Identifier], |
||||
[Name], |
||||
[BusinessName], |
||||
[BusinessAddress1], |
||||
[BusinessAddress2], |
||||
[BusinessAddress3], |
||||
[BusinessCountry], |
||||
[BusinessTaxNumber], |
||||
[BillingEmail], |
||||
[Plan], |
||||
[PlanType], |
||||
[Seats], |
||||
[MaxCollections], |
||||
[UsePolicies], |
||||
[UseSso], |
||||
[UseGroups], |
||||
[UseDirectory], |
||||
[UseEvents], |
||||
[UseTotp], |
||||
[Use2fa], |
||||
[UseApi], |
||||
[UseResetPassword], |
||||
[SelfHost], |
||||
[UsersGetPremium], |
||||
[Storage], |
||||
[MaxStorageGb], |
||||
[Gateway], |
||||
[GatewayCustomerId], |
||||
[GatewaySubscriptionId], |
||||
[ReferenceData], |
||||
[Enabled], |
||||
[LicenseKey], |
||||
[PublicKey], |
||||
[PrivateKey], |
||||
[TwoFactorProviders], |
||||
[ExpirationDate], |
||||
[CreationDate], |
||||
[RevisionDate], |
||||
[OwnersNotifiedOfAutoscaling], |
||||
[MaxAutoscaleSeats], |
||||
[UseKeyConnector], |
||||
[UseScim], |
||||
[UseCustomPermissions], |
||||
[UseSecretsManager], |
||||
[Status], |
||||
[UsePasswordManager], |
||||
[SmSeats], |
||||
[SmServiceAccounts], |
||||
[MaxAutoscaleSmSeats], |
||||
[MaxAutoscaleSmServiceAccounts], |
||||
[SecretsManagerBeta] |
||||
) |
||||
VALUES |
||||
( |
||||
@Id, |
||||
@Identifier, |
||||
@Name, |
||||
@BusinessName, |
||||
@BusinessAddress1, |
||||
@BusinessAddress2, |
||||
@BusinessAddress3, |
||||
@BusinessCountry, |
||||
@BusinessTaxNumber, |
||||
@BillingEmail, |
||||
@Plan, |
||||
@PlanType, |
||||
@Seats, |
||||
@MaxCollections, |
||||
@UsePolicies, |
||||
@UseSso, |
||||
@UseGroups, |
||||
@UseDirectory, |
||||
@UseEvents, |
||||
@UseTotp, |
||||
@Use2fa, |
||||
@UseApi, |
||||
@UseResetPassword, |
||||
@SelfHost, |
||||
@UsersGetPremium, |
||||
@Storage, |
||||
@MaxStorageGb, |
||||
@Gateway, |
||||
@GatewayCustomerId, |
||||
@GatewaySubscriptionId, |
||||
@ReferenceData, |
||||
@Enabled, |
||||
@LicenseKey, |
||||
@PublicKey, |
||||
@PrivateKey, |
||||
@TwoFactorProviders, |
||||
@ExpirationDate, |
||||
@CreationDate, |
||||
@RevisionDate, |
||||
@OwnersNotifiedOfAutoscaling, |
||||
@MaxAutoscaleSeats, |
||||
@UseKeyConnector, |
||||
@UseScim, |
||||
@UseCustomPermissions, |
||||
@UseSecretsManager, |
||||
@Status, |
||||
@UsePasswordManager, |
||||
@SmSeats, |
||||
@SmServiceAccounts, |
||||
@MaxAutoscaleSmSeats, |
||||
@MaxAutoscaleSmServiceAccounts, |
||||
@SecretsManagerBeta |
||||
) |
||||
END |
||||
GO |
||||
|
||||
-- Insert value in column `SecretsManagerBeta` in Organization_Update |
||||
CREATE OR ALTER PROCEDURE [dbo].[Organization_Update] |
||||
@Id UNIQUEIDENTIFIER, |
||||
@Identifier NVARCHAR(50), |
||||
@Name NVARCHAR(50), |
||||
@BusinessName NVARCHAR(50), |
||||
@BusinessAddress1 NVARCHAR(50), |
||||
@BusinessAddress2 NVARCHAR(50), |
||||
@BusinessAddress3 NVARCHAR(50), |
||||
@BusinessCountry VARCHAR(2), |
||||
@BusinessTaxNumber NVARCHAR(30), |
||||
@BillingEmail NVARCHAR(256), |
||||
@Plan NVARCHAR(50), |
||||
@PlanType TINYINT, |
||||
@Seats INT, |
||||
@MaxCollections SMALLINT, |
||||
@UsePolicies BIT, |
||||
@UseSso BIT, |
||||
@UseGroups BIT, |
||||
@UseDirectory BIT, |
||||
@UseEvents BIT, |
||||
@UseTotp BIT, |
||||
@Use2fa BIT, |
||||
@UseApi BIT, |
||||
@UseResetPassword BIT, |
||||
@SelfHost BIT, |
||||
@UsersGetPremium BIT, |
||||
@Storage BIGINT, |
||||
@MaxStorageGb SMALLINT, |
||||
@Gateway TINYINT, |
||||
@GatewayCustomerId VARCHAR(50), |
||||
@GatewaySubscriptionId VARCHAR(50), |
||||
@ReferenceData VARCHAR(MAX), |
||||
@Enabled BIT, |
||||
@LicenseKey VARCHAR(100), |
||||
@PublicKey VARCHAR(MAX), |
||||
@PrivateKey VARCHAR(MAX), |
||||
@TwoFactorProviders NVARCHAR(MAX), |
||||
@ExpirationDate DATETIME2(7), |
||||
@CreationDate DATETIME2(7), |
||||
@RevisionDate DATETIME2(7), |
||||
@OwnersNotifiedOfAutoscaling DATETIME2(7), |
||||
@MaxAutoscaleSeats INT, |
||||
@UseKeyConnector BIT = 0, |
||||
@UseScim BIT = 0, |
||||
@UseCustomPermissions BIT = 0, |
||||
@UseSecretsManager BIT = 0, |
||||
@Status TINYINT = 0, |
||||
@UsePasswordManager BIT = 1, |
||||
@SmSeats INT = null, |
||||
@SmServiceAccounts INT = null, |
||||
@MaxAutoscaleSmSeats INT = null, |
||||
@MaxAutoscaleSmServiceAccounts INT = null, |
||||
@SecretsManagerBeta BIT = 0 |
||||
AS |
||||
BEGIN |
||||
SET NOCOUNT ON |
||||
|
||||
UPDATE |
||||
[dbo].[Organization] |
||||
SET |
||||
[Identifier] = @Identifier, |
||||
[Name] = @Name, |
||||
[BusinessName] = @BusinessName, |
||||
[BusinessAddress1] = @BusinessAddress1, |
||||
[BusinessAddress2] = @BusinessAddress2, |
||||
[BusinessAddress3] = @BusinessAddress3, |
||||
[BusinessCountry] = @BusinessCountry, |
||||
[BusinessTaxNumber] = @BusinessTaxNumber, |
||||
[BillingEmail] = @BillingEmail, |
||||
[Plan] = @Plan, |
||||
[PlanType] = @PlanType, |
||||
[Seats] = @Seats, |
||||
[MaxCollections] = @MaxCollections, |
||||
[UsePolicies] = @UsePolicies, |
||||
[UseSso] = @UseSso, |
||||
[UseGroups] = @UseGroups, |
||||
[UseDirectory] = @UseDirectory, |
||||
[UseEvents] = @UseEvents, |
||||
[UseTotp] = @UseTotp, |
||||
[Use2fa] = @Use2fa, |
||||
[UseApi] = @UseApi, |
||||
[UseResetPassword] = @UseResetPassword, |
||||
[SelfHost] = @SelfHost, |
||||
[UsersGetPremium] = @UsersGetPremium, |
||||
[Storage] = @Storage, |
||||
[MaxStorageGb] = @MaxStorageGb, |
||||
[Gateway] = @Gateway, |
||||
[GatewayCustomerId] = @GatewayCustomerId, |
||||
[GatewaySubscriptionId] = @GatewaySubscriptionId, |
||||
[ReferenceData] = @ReferenceData, |
||||
[Enabled] = @Enabled, |
||||
[LicenseKey] = @LicenseKey, |
||||
[PublicKey] = @PublicKey, |
||||
[PrivateKey] = @PrivateKey, |
||||
[TwoFactorProviders] = @TwoFactorProviders, |
||||
[ExpirationDate] = @ExpirationDate, |
||||
[CreationDate] = @CreationDate, |
||||
[RevisionDate] = @RevisionDate, |
||||
[OwnersNotifiedOfAutoscaling] = @OwnersNotifiedOfAutoscaling, |
||||
[MaxAutoscaleSeats] = @MaxAutoscaleSeats, |
||||
[UseKeyConnector] = @UseKeyConnector, |
||||
[UseScim] = @UseScim, |
||||
[UseCustomPermissions] = @UseCustomPermissions, |
||||
[UseSecretsManager] = @UseSecretsManager, |
||||
[Status] = @Status, |
||||
[UsePasswordManager] = @UsePasswordManager, |
||||
[SmSeats] = @SmSeats, |
||||
[SmServiceAccounts] = @SmServiceAccounts, |
||||
[MaxAutoscaleSmSeats] = @MaxAutoscaleSmSeats, |
||||
[MaxAutoscaleSmServiceAccounts] = @MaxAutoscaleSmServiceAccounts, |
||||
[SecretsManagerBeta] = @SecretsManagerBeta |
||||
WHERE |
||||
[Id] = @Id |
||||
END |
||||
GO |
||||
|
||||
-- Update the metadata for the following view so that the SecretsManagerBeta column is included |
||||
IF OBJECT_ID('[dbo].[OrganizationView]') IS NOT NULL |
||||
BEGIN |
||||
EXECUTE sp_refreshview N'[dbo].[OrganizationView]'; |
||||
END |
||||
GO |
||||
@ -0,0 +1,16 @@
@@ -0,0 +1,16 @@
|
||||
/* |
||||
This is the data migration script for adding the SecretsManagerBeta column. |
||||
The initial migration util/Migrator/DbScripts/2023-07-03_00_SecretsManagerBetaColumn.sql should be run prior. |
||||
There is no final migration. |
||||
*/ |
||||
IF COL_LENGTH('[dbo].[Organization]', 'SecretsManagerBeta') IS NOT NULL |
||||
BEGIN |
||||
-- Set SecretsManagerBeta to 1 for Organizations where UseSecretsManager is 1. |
||||
-- At this time (at GA release) these are the Organizations using SecretsManager in beta. |
||||
-- We want to mark they are using SecretsManager beta for the sunset period, before |
||||
-- eventually removing the SecretsManagerBeta column and turning off beta access. |
||||
UPDATE [dbo].[Organization] |
||||
SET [SecretsManagerBeta] = 1 |
||||
WHERE [UseSecretsManager] = 1 |
||||
END |
||||
GO |
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,28 @@
@@ -0,0 +1,28 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
||||
#nullable disable |
||||
|
||||
namespace Bit.MySqlMigrations.Migrations; |
||||
|
||||
/// <inheritdoc /> |
||||
public partial class SecretsManagerBetaColumn : Migration |
||||
{ |
||||
/// <inheritdoc /> |
||||
protected override void Up(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.AddColumn<bool>( |
||||
name: "SecretsManagerBeta", |
||||
table: "Organization", |
||||
type: "tinyint(1)", |
||||
nullable: false, |
||||
defaultValue: false); |
||||
} |
||||
|
||||
/// <inheritdoc /> |
||||
protected override void Down(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.DropColumn( |
||||
name: "SecretsManagerBeta", |
||||
table: "Organization"); |
||||
} |
||||
} |
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,28 @@
@@ -0,0 +1,28 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
||||
#nullable disable |
||||
|
||||
namespace Bit.PostgresMigrations.Migrations; |
||||
|
||||
/// <inheritdoc /> |
||||
public partial class SecretsManagerBetaColumn : Migration |
||||
{ |
||||
/// <inheritdoc /> |
||||
protected override void Up(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.AddColumn<bool>( |
||||
name: "SecretsManagerBeta", |
||||
table: "Organization", |
||||
type: "boolean", |
||||
nullable: false, |
||||
defaultValue: false); |
||||
} |
||||
|
||||
/// <inheritdoc /> |
||||
protected override void Down(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.DropColumn( |
||||
name: "SecretsManagerBeta", |
||||
table: "Organization"); |
||||
} |
||||
} |
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,28 @@
@@ -0,0 +1,28 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
||||
#nullable disable |
||||
|
||||
namespace Bit.SqliteMigrations.Migrations; |
||||
|
||||
/// <inheritdoc /> |
||||
public partial class SecretsManagerBetaColumn : Migration |
||||
{ |
||||
/// <inheritdoc /> |
||||
protected override void Up(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.AddColumn<bool>( |
||||
name: "SecretsManagerBeta", |
||||
table: "Organization", |
||||
type: "INTEGER", |
||||
nullable: false, |
||||
defaultValue: false); |
||||
} |
||||
|
||||
/// <inheritdoc /> |
||||
protected override void Down(MigrationBuilder migrationBuilder) |
||||
{ |
||||
migrationBuilder.DropColumn( |
||||
name: "SecretsManagerBeta", |
||||
table: "Organization"); |
||||
} |
||||
} |
||||
Loading…
Reference in new issue