summaryrefslogtreecommitdiff
path: root/infra
diff options
context:
space:
mode:
Diffstat (limited to 'infra')
-rw-r--r--infra/chat/build-source.sh2
-rw-r--r--infra/chat/build-typescript.sh24
-rw-r--r--infra/containers/chat/Containerfile4
3 files changed, 27 insertions, 3 deletions
diff --git a/infra/chat/build-source.sh b/infra/chat/build-source.sh
index 6f24dcd..e173774 100644
--- a/infra/chat/build-source.sh
+++ b/infra/chat/build-source.sh
@@ -23,7 +23,7 @@ cargo vendor --locked var/build/chat-vendor | sed 's|directory = "var/build/chat
cp "$ROOT/.tools/wasi-source/openssl.tar.gz" "$BUILD/chat-openssl-3.6.5.tar.gz"
printf '%s %s\n' a2157c2830efdec3788939b00c9b0638306d3f0bbb76dc4832ee503bb397df98 "$BUILD/chat-openssl-3.6.5.tar.gz" | sha256sum --check
source_list="$BUILD/chat-source-files.txt"
-find Cargo.toml Cargo.lock rust-toolchain.toml .cargo .gitignore .gitattributes src crates infra web docs README.txt LICENSE deny.toml about.toml about.hbs .env.example -type f -print > "$source_list"
+find package.json package-lock.json tsconfig.json tsconfig.browser.json tsconfig.worker.json tsconfig.tests.json tests Cargo.toml Cargo.lock rust-toolchain.toml .cargo .gitignore .gitattributes src crates infra web docs README.txt LICENSE deny.toml about.toml about.hbs .env.example -type f -print > "$source_list"
tar -czf "$BUILD/chat-source.tar.gz.pending" --verbatim-files-from -T "$source_list" -C "$BUILD" chat-vendor chat-vendor-config.txt chat-openssl-3.6.5.tar.gz
mv "$BUILD/chat-source.tar.gz.pending" "$BUILD/chat-source.tar.gz"
sha256sum "$BUILD/chat-source.tar.gz"
diff --git a/infra/chat/build-typescript.sh b/infra/chat/build-typescript.sh
new file mode 100644
index 0000000..d9d44ad
--- /dev/null
+++ b/infra/chat/build-typescript.sh
@@ -0,0 +1,24 @@
+#!/bin/sh
+# Copyright (C) 2026 Doan Luu Duc Tai <doan@luuduct.ai>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+set -eu
+ROOT="$(CDPATH= cd -- "$(dirname -- "$0")/../.." && pwd)"
+cd "$ROOT"
+npm ci --ignore-scripts --no-audit --no-fund --cache "$ROOT/.tools/npm-cache"
+npm run check
+node_modules/.bin/tsc -p tsconfig.browser.json
+node_modules/.bin/tsc -p tsconfig.worker.json
+node_modules/.bin/tsc -p tsconfig.tests.json
diff --git a/infra/containers/chat/Containerfile b/infra/containers/chat/Containerfile
index a63683e..31724b5 100644
--- a/infra/containers/chat/Containerfile
+++ b/infra/containers/chat/Containerfile
@@ -17,8 +17,8 @@ FROM scratch
COPY server /app/bin/server
COPY crypto.wasm /app/bin/chat/crypto.wasm
COPY SOURCE.tar.gz /app/bin/chat/SOURCE.tar.gz
-COPY web /app/crates/chat-server/web
-COPY wasi.mjs /app/crates/chat-crypto/browser/wasi.mjs
+COPY web /app/bin/chat/web
+COPY wasi.mjs /app/bin/chat/wasi.mjs
COPY CHAT-APPLICATION.txt /app/docs/CHAT-APPLICATION.txt
COPY CHAT-PRODUCTION.txt /app/docs/CHAT-PRODUCTION.txt
COPY LICENSE /app/LICENSE