visualbasic/migration #1

Merged
jorge.burgos merged 32 commits from visualbasic/migration into main 2025-02-07 17:30:55 +00:00
4 changed files with 65 additions and 51 deletions
Showing only changes of commit 2ba65b8707 - Show all commits

View File

@ -2,10 +2,10 @@ version: '3.8'
services:
sqlserver:
build:
context: . # Changed from ./sql-server to . to include the whole directory
dockerfile: sql-server/Dockerfile # Updated path to Dockerfile
container_name: sqlserver_lightweight
build:
context: .
dockerfile: sql-server/Dockerfile
container_name: sql1
ports:
- "1433:1433"
environment:
@ -17,12 +17,18 @@ services:
deploy:
resources:
limits:
memory: 1G
cpus: '1.0'
memory: 2G # Minimum required for SQL Server
cpus: '1.0' # Limit to 1 CPU core
reservations:
memory: 512M
cpus: '0.5'
memory: 2G # Must reserve 2GB minimum for SQL Server to start
cpus: '0.25' # Reserve quarter of a CPU core
restart: unless-stopped
healthcheck:
test: /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P "$$SA_PASSWORD" -Q "SELECT 1" || exit 1
interval: 10s
timeout: 3s
retries: 10
start_period: 10s
volumes:
sqlserver_data:

View File

@ -1,30 +1,38 @@
# Use the lightweight SQL Server 2022 image
# Use SQL Server 2022 Express for smaller footprint
FROM mcr.microsoft.com/mssql/server:2022-latest
# Set environment variables
ENV ACCEPT_EULA=Y
ENV MSSQL_PID=Express
ENV SA_PASSWORD=YourStrong@Passw0rd
# Set required environment variables
ENV ACCEPT_EULA=Y \
MSSQL_PID=Express \
SA_PASSWORD=YourStrong@Passw0rd \
PATH="/opt/mssql-tools/bin:${PATH}"
# Create a directory for database scripts
# Install sqlcmd utility
USER root
RUN apt-get update && \
apt-get install -y wget software-properties-common gnupg2 && \
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \
add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2022.list)" && \
apt-get update && \
ACCEPT_EULA=Y apt-get install -y mssql-tools unixodbc-dev && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# Create app directory and schemas subdirectory in one layer
WORKDIR /usr/src/app
RUN mkdir -p schemas
# Create schemas directory
RUN mkdir -p /usr/src/app/schemas
# Copy the schema files
COPY sql-server/schemas/dbo_schema_database_statements_small.sql /usr/src/app/schemas/
COPY sql-server/schemas/fp_schema_database_statements_small.sql /usr/src/app/schemas/
COPY sql-server/schemas/fw_schema_database_statements_small.sql /usr/src/app/schemas/
COPY sql-server/schemas/int_schema_database_statements_small.sql /usr/src/app/schemas/
COPY sql-server/schemas/ob_schema_database_statements_small.sql /usr/src/app/schemas/
# Copy initialization script
COPY sql-server/init.sql /usr/src/app/
COPY sql-server/setup.sh /usr/src/app/
# Copy all SQL files in a single layer to reduce image size
COPY ./sql-server/schemas/*.sql ./schemas/
COPY ./sql-server/init.sql ./
COPY ./sql-server/setup.sh ./
# Fix line endings and make setup script executable
RUN sed -i 's/\r$//' /usr/src/app/setup.sh && \
chmod +x /usr/src/app/setup.sh
RUN sed -i 's/\r$//' setup.sh && \
chmod +x setup.sh
CMD /bin/bash /usr/src/app/setup.sh
# Switch back to mssql user
USER mssql
# Start SQL Server with our setup script
CMD /bin/bash ./setup.sh

View File

@ -16,7 +16,7 @@ CREATE TABLE [dbo].[AMAssumptionView] (
[AssumptionJoinDataGUID] uniqueidentifier NOT NULL,
[FolderGUID] uniqueidentifier NOT NULL,
[IsDistributionModeActive] bit NOT NULL,
[DistributionInfo] xml(max) NOT NULL,
[DistributionInfo] xml NOT NULL,
[ProviderGUID] uniqueidentifier NOT NULL,
[CreatedDate] datetime NOT NULL,
[CreatedBy] uniqueidentifier NOT NULL,
@ -72,7 +72,7 @@ CREATE TABLE [dbo].[AMCorrelationGroup] (
[AssumptionGroupGUID] uniqueidentifier NOT NULL,
[Name] nvarchar(64) NOT NULL,
[IsGlobal] bit NOT NULL,
[MembersXML] xml(max) NOT NULL,
[MembersXML] xml NOT NULL,
PRIMARY KEY ([CorrelationGroupGUID])
);
GO
@ -1288,7 +1288,7 @@ ALTER TABLE [dbo].[CustomMenu] ADD CONSTRAINT [DF_CustomMenu_ISGLOBAL] DEFAULT (
CREATE TABLE [dbo].[CustomMenuContent] (
[CustomMenuContentGUID] uniqueidentifier NOT NULL,
[CustomMenuGUID] uniqueidentifier NOT NULL,
[ContentXML] xml(max) NOT NULL,
[ContentXML] xml NOT NULL,
PRIMARY KEY ([CustomMenuContentGUID])
);
GO
@ -2928,7 +2928,7 @@ CREATE TABLE [dbo].[EMFSubtableDefaultTuple] (
[SUBTABLEDEFAULTTUPLEGUID] uniqueidentifier NOT NULL,
[SUBTABLEGUID] uniqueidentifier NOT NULL,
[ISONCOLUMN] bit NOT NULL,
[DIMENSIONTUPLEXML] xml(max) NOT NULL,
[DIMENSIONTUPLEXML] xml NOT NULL,
PRIMARY KEY ([SUBTABLEDEFAULTTUPLEGUID])
);
GO
@ -3707,7 +3707,7 @@ CREATE TABLE [dbo].[FEFormField] (
[RenderComparisonFieldGUID] uniqueidentifier NOT NULL,
[RenderComparisonOperator] int NOT NULL,
[RefreshMode] tinyint NOT NULL,
[TypeConfigXML] xml(max) NOT NULL,
[TypeConfigXML] xml NOT NULL,
PRIMARY KEY ([FORMFIELDGUID])
);
@ -3930,7 +3930,7 @@ ALTER TABLE [dbo].[FEFormSection] ADD CONSTRAINT [DF_FEFormSection_RuleGroupType
CREATE TABLE [dbo].[FEFormSectionRule] (
[FormSectionRuleGUID] uniqueidentifier NOT NULL,
[FormSectionGUID] uniqueidentifier NOT NULL,
[RuleXML] xml(max) NOT NULL,
[RuleXML] xml NOT NULL,
[Description] nvarchar(max) NOT NULL,
[RuleType] int NOT NULL,
PRIMARY KEY ([FormSectionRuleGUID])
@ -4709,7 +4709,7 @@ CREATE TABLE [dbo].[HistoryItem] (
[CATEGORY] nvarchar(64) NOT NULL,
[DESCRIPTION] nvarchar(4000) NOT NULL,
[USERCOMMENTS] nvarchar(256) NOT NULL,
[METAXML] xml(max) NOT NULL,
[METAXML] xml NOT NULL,
[VERSION] timestamp NOT NULL,
[MODIFIERUSERNAME] nvarchar(256) NOT NULL,
[ITEMCOUNT] int NOT NULL,
@ -4873,7 +4873,7 @@ CREATE TABLE [dbo].[ImportCSVConfig] (
[ImportCSVConfigGUID] uniqueidentifier NOT NULL,
[Name] nvarchar(64) NOT NULL,
[Description] nvarchar(450) NOT NULL,
[ConfigXML] xml(max) NOT NULL,
[ConfigXML] xml NOT NULL,
[TimeoutSeconds] int NOT NULL,
PRIMARY KEY ([ImportCSVConfigGUID])
);
@ -4899,7 +4899,7 @@ CREATE TABLE [dbo].[IntCapERPConnectorConfig] (
[PollFrequency] int NOT NULL,
[EnvironmentType] tinyint NOT NULL,
[SystemType] smallint NOT NULL,
[AdditionalDataXML] xml(max) NOT NULL,
[AdditionalDataXML] xml NOT NULL,
PRIMARY KEY ([ConnectorConfigGUID])
);
GO
@ -6546,7 +6546,7 @@ CREATE TABLE [dbo].[OMZPool] (
[Name] nvarchar(64) NOT NULL,
[ProviderSettingsGUID] uniqueidentifier NOT NULL,
[PoolDimensionMemberGUID] uniqueidentifier NOT NULL,
[Metadata] xml(max) NOT NULL,
[Metadata] xml NOT NULL,
[ApprovedFormFieldGUID] uniqueidentifier NOT NULL,
[PlanTypeGUID] uniqueidentifier NOT NULL,
[IsUsingFinancialReturn] bit NOT NULL,
@ -6579,7 +6579,7 @@ CREATE TABLE [dbo].[OMZProviderSettings] (
[ProviderSettingsGUID] uniqueidentifier NOT NULL,
[Name] nvarchar(64) NOT NULL,
[AssemblyQualifiedName] nvarchar(450) NOT NULL,
[Metadata] xml(max) NOT NULL,
[Metadata] xml NOT NULL,
[ProviderAssemblyQualifiedName] nvarchar(450) NOT NULL,
[PoolDimensionGUID] uniqueidentifier NOT NULL,
[DefaultEvaluatorRoleGUID] uniqueidentifier NOT NULL,
@ -6614,7 +6614,7 @@ CREATE TABLE [dbo].[OMZScenario] (
[Name] nvarchar(64) NOT NULL,
[Description] nvarchar(4000) NOT NULL,
[PoolGUID] uniqueidentifier NOT NULL,
[Metadata] xml(max) NOT NULL,
[Metadata] xml NOT NULL,
PRIMARY KEY ([ScenarioGUID])
);
GO
@ -8768,7 +8768,7 @@ CREATE TABLE [dbo].[ReportArchiveEntryDetail] (
[ReportArchiveEntryDetailGUID] uniqueidentifier NOT NULL,
[ReportArchiveEntryGUID] uniqueidentifier NOT NULL,
[ReportArchiveDetailAQN] nvarchar(400) NOT NULL,
[ReportArchiveDetailXML] xml(max) NOT NULL,
[ReportArchiveDetailXML] xml NOT NULL,
PRIMARY KEY ([ReportArchiveEntryDetailGUID])
);
GO
@ -8830,7 +8830,7 @@ CREATE TABLE [dbo].[RuleAction] (
[RuleSetGUID] uniqueidentifier NOT NULL,
[ExecutionOrder] int NOT NULL,
[RuleActionTypeAQN] nvarchar(450) NOT NULL,
[RuleActionTypeConfigXML] xml(max) NOT NULL,
[RuleActionTypeConfigXML] xml NOT NULL,
PRIMARY KEY ([RuleActionGUID])
);
@ -8873,7 +8873,7 @@ CREATE TABLE [dbo].[RuleItem] (
[RuleGUID] uniqueidentifier NOT NULL,
[RuleGroupGUID] uniqueidentifier NOT NULL,
[RuleTypeAQN] nvarchar(450) NOT NULL,
[RuleTypeConfigXML] xml(max) NOT NULL,
[RuleTypeConfigXML] xml NOT NULL,
[DisplayOrder] int NOT NULL,
[Name] nvarchar(100) NOT NULL,
PRIMARY KEY ([RuleGUID])
@ -9217,7 +9217,7 @@ CREATE TABLE [dbo].[SAShockAssumptionType] (
[Name] nvarchar(100) NOT NULL,
[BaseTableName] nvarchar(50) NOT NULL,
[ShockTableName] nvarchar(50) NOT NULL,
[WhereClauseXML] xml(max) NOT NULL,
[WhereClauseXML] xml NOT NULL,
[DisplayFormat] nvarchar(50) NOT NULL,
[IsPercentage] bit NOT NULL,
[FormulaColumnName] nvarchar(max) NOT NULL,
@ -11171,7 +11171,7 @@ CREATE TABLE [dbo].[ScoreTableEditorColumn] (
[Type] int NOT NULL,
[PixelWidth] int NOT NULL,
[DisplayOrder] int NOT NULL,
[MetaData] xml(max) NOT NULL,
[MetaData] xml NOT NULL,
[DisplayName] nvarchar(450) NOT NULL,
[DefaultMemberType] int NOT NULL,
[IsTextWrap] bit NOT NULL,
@ -11979,7 +11979,7 @@ CREATE TABLE [dbo].[SystemCenterStep] (
[SortOrder] int NOT NULL,
[SectionGUID] uniqueidentifier NOT NULL,
[Name] nvarchar(200) NOT NULL,
[PropertyXML] xml(max) NOT NULL,
[PropertyXML] xml NOT NULL,
[Url] nvarchar(400) NOT NULL,
[GlobalID] nvarchar(100) NOT NULL,
[Description] nvarchar(4000) NOT NULL,
@ -12206,7 +12206,7 @@ CREATE TABLE [dbo].[TETaskHistory] (
[TaskGUID] uniqueidentifier NOT NULL,
[Name] nvarchar(450) NOT NULL,
[Status] int NOT NULL,
[ContextXML] xml(max) NOT NULL,
[ContextXML] xml NOT NULL,
[CreationTime] datetime NOT NULL,
[StartTime] datetime NOT NULL,
[LastRunTime] datetime NOT NULL,
@ -12297,7 +12297,7 @@ ALTER TABLE [dbo].[Tag] ADD CONSTRAINT [DF_Tag_Tag] DEFAULT ('') FOR [Name]; GO
CREATE TABLE [dbo].[TaskProgressStatus] (
[RowID] bigint NOT NULL,
[TaskGUID] uniqueidentifier NOT NULL,
[DataXML] xml(max) NOT NULL,
[DataXML] xml NOT NULL,
[StartTime] datetime NOT NULL,
[TaskStatus] nvarchar(100) NOT NULL,
[GlobalID] nvarchar(100) NOT NULL,

View File

@ -16,7 +16,7 @@ CREATE TABLE [dbo].[AMAssumptionView] (
[AssumptionJoinDataGUID] uniqueidentifier NOT NULL,
[FolderGUID] uniqueidentifier NOT NULL,
[IsDistributionModeActive] bit NOT NULL,
[DistributionInfo] xml(max) NOT NULL,
[DistributionInfo] xml NOT NULL,
[ProviderGUID] uniqueidentifier NOT NULL,
[CreatedDate] datetime NOT NULL,
[CreatedBy] uniqueidentifier NOT NULL,