Compare commits
11 commits
codex/down
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a69b81e3d7 | ||
|
|
b0c6f8d009 | ||
|
|
09c4b749f2 | ||
|
|
8d3980d654 | ||
|
|
76957c8284 | ||
|
|
67570d9b1f | ||
|
|
b152e5bf4b | ||
|
|
463f98d078 | ||
|
|
cf3acf0906 | ||
|
|
9a37a6e937 | ||
|
|
9412b39919 |
3 changed files with 5645 additions and 4 deletions
34
.forgejo/workflows/ci.yml
Normal file
34
.forgejo/workflows/ci.yml
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
pull_request:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
ci:
|
||||||
|
# This label must point to an isolated runner that has Node.js, Git,
|
||||||
|
# the Docker CLI, and access to a Docker/Podman daemon.
|
||||||
|
runs-on: docker-build
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Check out repository
|
||||||
|
uses: https://data.forgejo.org/actions/checkout@v6
|
||||||
|
|
||||||
|
- name: Set up Node.js
|
||||||
|
uses: https://data.forgejo.org/actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version: "20"
|
||||||
|
cache: npm
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: npm ci
|
||||||
|
|
||||||
|
- name: Typecheck
|
||||||
|
run: npm run typecheck
|
||||||
|
|
||||||
|
- name: Build and test
|
||||||
|
run: npm test
|
||||||
|
|
||||||
|
- name: Build container image
|
||||||
|
run: docker build --tag webstack-author:ci .
|
||||||
|
|
@ -6,8 +6,8 @@ WORKDIR /app
|
||||||
# Copy dependency manifests
|
# Copy dependency manifests
|
||||||
COPY package*.json ./
|
COPY package*.json ./
|
||||||
|
|
||||||
# Install all dependencies
|
# Install exactly the dependency versions recorded in package-lock.json
|
||||||
RUN npm install
|
RUN npm ci
|
||||||
|
|
||||||
# Copy full application codebase
|
# Copy full application codebase
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
@ -23,8 +23,8 @@ WORKDIR /app
|
||||||
# Copy configuration files
|
# Copy configuration files
|
||||||
COPY package*.json ./
|
COPY package*.json ./
|
||||||
|
|
||||||
# Install only production dependencies (Express, dotenv, @google/genai)
|
# Install exactly the locked production dependencies
|
||||||
RUN npm install --omit=dev
|
RUN npm ci --omit=dev
|
||||||
|
|
||||||
# Copy compiled build resources from builder stage
|
# Copy compiled build resources from builder stage
|
||||||
COPY --from=builder /app/dist ./dist
|
COPY --from=builder /app/dist ./dist
|
||||||
|
|
|
||||||
5607
package-lock.json
generated
Normal file
5607
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue