File tree Expand file tree Collapse file tree
helm-charts/cogstack-cohorter-helm/ci Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -3,5 +3,3 @@ client/node_modules/
33client-react /node_modules /
44server /node_modules /
55
6- server /data /
7- ! server /data /snomed_terms_data.tar.gz
Original file line number Diff line number Diff line change @@ -5,11 +5,6 @@ COPY . .
55RUN cd /usr/src/app/client-react && npm install && npm run build
66RUN cd /usr/src/app/server && npm install
77
8- # Bundle the demo SNOMED data archive so random/demo mode works with no volume mount.
9- # Kept separate from server/data/ so a runtime volume mount doesn't shadow it.
10- RUN mkdir -p /usr/src/app/server/data-bundled
11- RUN cp /usr/src/app/server/data/snomed_terms_data.tar.gz /usr/src/app/server/data-bundled/
12-
138COPY entrypoint.sh /entrypoint.sh
149RUN sed -i 's/\r $//' /entrypoint.sh && chmod +x /entrypoint.sh
1510
Original file line number Diff line number Diff line change 22set -e
33
44DATA_DIR=/usr/src/app/server/data
5- BUNDLED_ARCHIVE=/usr/src/app/server/data-bundled/snomed_terms_data.tar.gz
65
7- # ── Step 1: extract bundled SNOMED data if not already present ────────────────
8- if [ ! -f " $DATA_DIR /snomed_terms.json" ]; then
9- echo " [webapp] Extracting bundled SNOMED data..."
10- tar xzvf " $BUNDLED_ARCHIVE " -C " $DATA_DIR "
11- fi
6+ # Ensure the writable data directory exists (may be an emptyDir or PVC mount).
7+ mkdir -p " $DATA_DIR "
128
13- # ── Step 2 (optional): generate random patient data ───────────────────────────
14- # Runs only on first startup — skipped if patient data files already exist.
15- # Set RANDOM_DATA=false and supply real MIMIC-IV shaped data via volume mount.
9+ # ── Generate random patient data on first startup (random/demo mode) ──────────
1610if [ " ${RANDOM_DATA} " = " true" ] && [ ! -f " $DATA_DIR /ptt2age.json" ]; then
1711 echo " [webapp] Generating random demo patient data..."
1812 node --max-old-space-size=32768 /usr/src/app/server/gen_random_data.js
1913fi
2014
21- # ── Step 3: start the server ──────────────────────────────────────────────────
15+ # ── Start the server ──────── ──────────────────────────────────────────────────
2216exec node --max-old-space-size=32768 server.js
Load diff Large diffs are not rendered by default.
Load diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change 33// node --max-old-space-size=32768 gen_random_data.js
44console . log ( 'Generating random data' )
55const fs = require ( 'fs' ) ;
6- const snomed_terms = require ( './data/snomed_terms .json' ) ;
6+ const snomed_terms = require ( './data/snomed_example .json' ) ;
77
88// Returns a random integer between min (inclusive) and max (inclusive).
99function random_int ( min , max ) {
Original file line number Diff line number Diff line change @@ -33,9 +33,15 @@ const NL2DSL_SERVER = process.env.NL2DSL_SERVER || "http://localhost:3002/api/co
3333let port = process . env . PORT || 3000 ;
3434console . log ( 'Loading data...' ) ;
3535
36- // index all the snomed concepts
37- const snomed_terms = require ( './data/snomed_terms.json' ) ;
38- const cui_pt2ch = require ( './data/cui_pt2ch.json' ) ;
36+ // In random/demo mode use the example subset baked into the image.
37+ // In production mode use the full SNOMED files supplied via volume mount.
38+ const isRandomMode = ( process . env . RANDOM_DATA || 'true' ) === 'true' ;
39+ const snomed_terms = isRandomMode
40+ ? require ( './data/snomed_example.json' )
41+ : require ( './data/snomed_terms.json' ) ;
42+ const cui_pt2ch = isRandomMode
43+ ? require ( './data/cui_pt2ch_example.json' )
44+ : require ( './data/cui_pt2ch.json' ) ;
3945
4046// for admin login
4147const admin_pwd = process . env . PASSWORD || 'admin_pass' ;
Original file line number Diff line number Diff line change 11# CI smoke-test overrides.
2- # RANDOM_DATA=true is already the default — the image's bundled demo SNOMED data
3- # is used automatically, so no data mount or init container is needed here.
4- # Persistence is disabled so no PVC is provisioned during the test.
52webapp :
63 persistence :
74 enabled : false
You can’t perform that action at this time.
0 commit comments