30 lines
870 B
YAML
30 lines
870 B
YAML
workflow:
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
|
|
stages:
|
|
- build_and_release
|
|
|
|
build-and-release:
|
|
stage: build_and_release
|
|
image: oven/bun:latest
|
|
script:
|
|
- echo "🚀 Memulai proses build untuk tag $CI_COMMIT_TAG..."
|
|
- bun install --frozen-lockfile
|
|
- bun run route:sync
|
|
- bun build --compile --minify-whitespace --minify-syntax --target bun --outfile "server-compiled" ./src/index.ts
|
|
- echo "✅ Build selesai. File 'server-compiled' telah dibuat."
|
|
release:
|
|
tag_name: "$CI_COMMIT_TAG"
|
|
name: "Release $CI_COMMIT_TAG"
|
|
description: "Rilis otomatis berisi aplikasi server yang sudah dicompile."
|
|
assets:
|
|
links:
|
|
- name: "server-compiled"
|
|
url: "${CI_PROJECT_URL}/-/jobs/${CI_JOB_ID}/artifacts/raw/server-compiled"
|
|
link_type: "other"
|
|
artifacts:
|
|
paths:
|
|
- server-compiled
|
|
expire_in: never
|