From 26b766f7e2330e9ad2bf11a69473720295622410 Mon Sep 17 00:00:00 2001 From: Will Mooreston Date: Fri, 24 Jul 2026 12:18:38 -0700 Subject: [PATCH 1/2] Add manifest.properties COPY layer for kanban #2018 Lays 48_manifest.properties alongside the existing distribution properties file so the LimsStarterContainer build can layer in the upstream-generated ModuleLoader.include manifest without disturbing per-distribution properties. Placeholder committed at repo root so other distributions keep building; the sibling TeamCity test build will populate it from the SNAPSHOT Installers artifact. Co-Authored-By: Claude Sonnet 5 --- Dockerfile | 3 +++ manifest.properties | 1 + 2 files changed, 4 insertions(+) create mode 100644 manifest.properties diff --git a/Dockerfile b/Dockerfile index 599552b..32f19b1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -207,6 +207,9 @@ COPY application.properties config/ COPY startup/basic.properties \ startup/50_basic.properties +COPY manifest.properties \ + startup/48_manifest.properties + COPY "startup/${LABKEY_DISTRIBUTION}.properties" \ startup/49_distribution.properties diff --git a/manifest.properties b/manifest.properties new file mode 100644 index 0000000..8b11ef5 --- /dev/null +++ b/manifest.properties @@ -0,0 +1 @@ +${LABKEY_STARTUP_DISTRIBUTION_EXTRA} From 4072ea6106e2ae46a91cb3e284b5384c03b32d9d Mon Sep 17 00:00:00 2001 From: Will Mooreston Date: Tue, 4 Aug 2026 15:17:52 -0700 Subject: [PATCH 2/2] Kanban 2018: Drop per-distribution startup properties in favor of manifest.properties MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Removes startup/{allpg,community,enterprise,lims_starter}.properties since prod deployments always overwrite them anyway, and they'd drifted (lims_starter.properties had a ModuleLoader.exclude line silently ignored due to a missing ;startup modifier) — only basic.properties remains. Moves manifest.properties into startup/ alongside basic.properties for consistency, and drops the now-dead COPY "startup/${LABKEY_DISTRIBUTION}.properties" layer from the Dockerfile since there's no longer a source file for it. Bumps quickstart_envs.sh's LABKEY_VERSION to 26.9-SNAPSHOT to match current local testing. --- CLAUDE.md | 2 +- Dockerfile | 7 ++----- quickstart_envs.sh | 2 +- startup/allpg.properties | 1 - startup/community.properties | 1 - startup/enterprise.properties | 1 - startup/lims_starter.properties | 17 ----------------- .../manifest.properties | 0 8 files changed, 4 insertions(+), 27 deletions(-) delete mode 100644 startup/allpg.properties delete mode 100644 startup/community.properties delete mode 100644 startup/enterprise.properties delete mode 100644 startup/lims_starter.properties rename manifest.properties => startup/manifest.properties (100%) diff --git a/CLAUDE.md b/CLAUDE.md index 2993b62..6a6436a 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -46,7 +46,7 @@ make all # login → build → tag → push (default) ### Multi-Distribution -The `startup/` directory contains per-distribution `.properties` files (`community.properties`, `enterprise.properties`, etc.). The `LABKEY_DISTRIBUTION` env var selects which file is copied in at build time and passed to the JVM. +The `startup/` directory contains `basic.properties` and `manifest.properties` — per-distribution `.properties` files were removed since prod deployments always overwrite them anyway. `startup/manifest.properties` (copied to `startup/48_manifest.properties`) carries the distribution's `ModuleLoader.include`/`ModuleLoader.exclude` set instead, generated per-build from the SNAPSHOT Installers artifact. `LABKEY_DISTRIBUTION` still selects the docker-compose service and image tag, and is passed to the JVM as an env var. ### Configuration Surface diff --git a/Dockerfile b/Dockerfile index 32f19b1..b3317fd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -203,16 +203,13 @@ COPY "labkeyServer.jar" "${LABKEY_HOME}" # add spring properties COPY application.properties config/ -# add basic + distribution startup properties +# add basic + manifest startup properties COPY startup/basic.properties \ startup/50_basic.properties -COPY manifest.properties \ +COPY startup/manifest.properties \ startup/48_manifest.properties -COPY "startup/${LABKEY_DISTRIBUTION}.properties" \ - startup/49_distribution.properties - # add logging config files COPY "*.log4j2.xml" "config/" diff --git a/quickstart_envs.sh b/quickstart_envs.sh index eb97930..2ab44f2 100644 --- a/quickstart_envs.sh +++ b/quickstart_envs.sh @@ -3,7 +3,7 @@ # example minimal set of environment variables to get started - see readme for additional envs you may wish to set # embedded tomcat LabKey .jar version to build container with -export LABKEY_VERSION="26.6" +export LABKEY_VERSION="26.9-SNAPSHOT" # minimal SMTP settings export SMTP_HOST="localhost" diff --git a/startup/allpg.properties b/startup/allpg.properties deleted file mode 100644 index 8b11ef5..0000000 --- a/startup/allpg.properties +++ /dev/null @@ -1 +0,0 @@ -${LABKEY_STARTUP_DISTRIBUTION_EXTRA} diff --git a/startup/community.properties b/startup/community.properties deleted file mode 100644 index 8b11ef5..0000000 --- a/startup/community.properties +++ /dev/null @@ -1 +0,0 @@ -${LABKEY_STARTUP_DISTRIBUTION_EXTRA} diff --git a/startup/enterprise.properties b/startup/enterprise.properties deleted file mode 100644 index 8b11ef5..0000000 --- a/startup/enterprise.properties +++ /dev/null @@ -1 +0,0 @@ -${LABKEY_STARTUP_DISTRIBUTION_EXTRA} diff --git a/startup/lims_starter.properties b/startup/lims_starter.properties deleted file mode 100644 index 03c9aaa..0000000 --- a/startup/lims_starter.properties +++ /dev/null @@ -1,17 +0,0 @@ -FolderTypes.disabledTypes;bootstrap=Dataspace - -LookAndFeelSettings.customStylesheet;bootstrap=sampleManagement:data/files/customStylesheet.css -LookAndFeelSettings.iconImage;bootstrap=sampleManagement:data/files/iconImage.ico -LookAndFeelSettings.logoImage;bootstrap=sampleManagement:data/files/logoImage.svg -LookAndFeelSettings.themeName;bootstrap=Sky - -SampleManager.updateSecurityEmailTemplates;bootstrap=true - -SiteSettings.homeProjectFolderType;bootstrap=Sample Manager -SiteSettings.homeProjectResetPermissions;bootstrap=true - -# LKSM Pro -ModuleLoader.exclude=biologics -ProductConfiguration.productKey=sampleManagerProfessional - -${LABKEY_STARTUP_DISTRIBUTION_EXTRA} diff --git a/manifest.properties b/startup/manifest.properties similarity index 100% rename from manifest.properties rename to startup/manifest.properties