First commit in my branch
This commit is contained in:
109
werf.yaml
Normal file
109
werf.yaml
Normal file
@@ -0,0 +1,109 @@
|
|||||||
|
---
|
||||||
|
project: s21game2-frontend
|
||||||
|
configVersion: 1
|
||||||
|
build:
|
||||||
|
platform:
|
||||||
|
- linux/amd64
|
||||||
|
imageSpec:
|
||||||
|
author: s21party
|
||||||
|
config:
|
||||||
|
keepEssentialWerfLabels: true
|
||||||
|
|
||||||
|
---
|
||||||
|
image: frontend_base
|
||||||
|
platform:
|
||||||
|
- linux/amd64
|
||||||
|
from: registry.corp.s21party.ru/public-mirrors/node:25.2.1-alpine3.22
|
||||||
|
|
||||||
|
---
|
||||||
|
image: frontend_deps
|
||||||
|
platform:
|
||||||
|
- linux/amd64
|
||||||
|
from: frontend_base
|
||||||
|
git:
|
||||||
|
- add: /
|
||||||
|
to: /app
|
||||||
|
includePaths:
|
||||||
|
- package.json
|
||||||
|
- package-lock.json
|
||||||
|
stageDependencies:
|
||||||
|
install:
|
||||||
|
- package.json
|
||||||
|
- package-lock.json
|
||||||
|
shell:
|
||||||
|
beforeInstall:
|
||||||
|
- apk add --no-cache libc6-compat
|
||||||
|
install:
|
||||||
|
- cd /app
|
||||||
|
- |
|
||||||
|
if [ -f yarn.lock ]; then yarn --frozen-lockfile;
|
||||||
|
elif [ -f package-lock.json ]; then npm ci;
|
||||||
|
elif [ -f pnpm-lock.yaml ]; then corepack enable pnpm && pnpm i --frozen-lockfile;
|
||||||
|
else echo "Lockfile not found." && exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
---
|
||||||
|
image: frontend_builder
|
||||||
|
platform:
|
||||||
|
- linux/amd64
|
||||||
|
from: frontend_base
|
||||||
|
imageSpec:
|
||||||
|
config:
|
||||||
|
workingDir: /app
|
||||||
|
env:
|
||||||
|
NEXT_TELEMETRY_DISABLED: "1"
|
||||||
|
git:
|
||||||
|
- add: /
|
||||||
|
to: /app
|
||||||
|
import:
|
||||||
|
- from: frontend_deps
|
||||||
|
before: install
|
||||||
|
add: /app/node_modules
|
||||||
|
to: /app/node_modules
|
||||||
|
shell:
|
||||||
|
install:
|
||||||
|
- cd /app
|
||||||
|
- |
|
||||||
|
if [ -f yarn.lock ]; then yarn run build;
|
||||||
|
elif [ -f package-lock.json ]; then npm run build;
|
||||||
|
elif [ -f pnpm-lock.yaml ]; then corepack enable pnpm && pnpm run build;
|
||||||
|
else echo "Lockfile not found." && exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
---
|
||||||
|
image: frontend_runner
|
||||||
|
platform:
|
||||||
|
- linux/amd64
|
||||||
|
from: frontend_base
|
||||||
|
imageSpec:
|
||||||
|
config:
|
||||||
|
workingDir: /app
|
||||||
|
env:
|
||||||
|
NODE_ENV: "production"
|
||||||
|
PORT: "3000"
|
||||||
|
HOSTNAME: "0.0.0.0"
|
||||||
|
cmd: ["node", "server.js"]
|
||||||
|
user: nextjs
|
||||||
|
expose:
|
||||||
|
- "3000"
|
||||||
|
import:
|
||||||
|
- from: frontend_builder
|
||||||
|
before: setup
|
||||||
|
add: /app/.next/standalone
|
||||||
|
to: /app
|
||||||
|
owner: "1001"
|
||||||
|
group: "1001"
|
||||||
|
- from: frontend_builder
|
||||||
|
before: setup
|
||||||
|
add: /app/.next/static
|
||||||
|
to: /app/.next/static
|
||||||
|
owner: "1001"
|
||||||
|
group: "1001"
|
||||||
|
- from: frontend_builder
|
||||||
|
before: setup
|
||||||
|
add: /app/public
|
||||||
|
to: /app/public
|
||||||
|
shell:
|
||||||
|
beforeSetup:
|
||||||
|
- addgroup --system --gid 1001 nodejs
|
||||||
|
- adduser --system --uid 1001 nextjs
|
||||||
Reference in New Issue
Block a user