designtopack/.gitlab-ci.yml
2025-08-01 16:44:45 +02:00

53 lines
1.3 KiB
YAML

stages:
- build
- deploy
variables:
COMPOSER_ALLOW_SUPERUSER: '1'
build:
stage: build
image: composer:2
script:
- composer install --no-dev --optimize-autoloader
- apk add --no-cache nodejs npm
- npm install
- npm run build
artifacts:
paths:
- dist/
- vendor/
- composer.lock
- composer.json
deploy:
stage: deploy
image: node:latest
only:
- main
before_script:
- apt-get update -qq && apt-get install -y rsync sshpass
script:
- cd dist
- |
sshpass -p "$PASSWORD" rsync -avz --delete -O \
--exclude 'accounts/' \
--exclude 'cache/' \
--exclude 'sessions/' \
-e "ssh -p 2244 -o StrictHostKeyChecking=no" \
site/ $USERNAME@$HOST:$PROD_PATH/site/
sshpass -p "$PASSWORD" rsync -avz --delete -O \
-e "ssh -p 2244 -o StrictHostKeyChecking=no" \
../vendor/ $USERNAME@$HOST:$PROD_PATH/vendor/
sshpass -p "$PASSWORD" rsync -avz --delete -O \
-e "ssh -p 2244 -o StrictHostKeyChecking=no" \
kirby/ $USERNAME@$HOST:$PROD_PATH/kirby/
sshpass -p "$PASSWORD" rsync -avz --delete -O \
--exclude 'tiles/' \
-e "ssh -p 2244 -o StrictHostKeyChecking=no" \
assets/ $USERNAME@$HOST:$PROD_PATH/assets/
dependencies:
- build