You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
795 B
55 lines
795 B
stages:
|
|
- test
|
|
- build
|
|
- deploy
|
|
|
|
variables:
|
|
NODE_VERSION: "20"
|
|
|
|
.node_template: &node_template
|
|
image: oven/bun:1-alpine
|
|
cache:
|
|
key: ${CI_COMMIT_REF_SLUG}
|
|
paths:
|
|
- node_modules/
|
|
- ~/.bun/install/cache/
|
|
before_script:
|
|
- bun install
|
|
|
|
test:
|
|
<<: *node_template
|
|
stage: test
|
|
script:
|
|
- bun run lint
|
|
- bun run check
|
|
only:
|
|
- main
|
|
- merge_requests
|
|
- branches
|
|
|
|
build:
|
|
<<: *node_template
|
|
stage: build
|
|
script:
|
|
- bun run build
|
|
artifacts:
|
|
paths:
|
|
- dist/
|
|
expire_in: 1 hour
|
|
only:
|
|
- main
|
|
- merge_requests
|
|
|
|
pages:
|
|
<<: *node_template
|
|
stage: deploy
|
|
script:
|
|
- bun run build
|
|
- mkdir -p public
|
|
- cp -r dist/* public/
|
|
artifacts:
|
|
paths:
|
|
- public
|
|
expire_in: 30 days
|
|
only:
|
|
- preview |