55 lines
1.4 KiB
YAML
55 lines
1.4 KiB
YAML
image: node:latest
|
|
|
|
cache:
|
|
paths:
|
|
- node_modules/
|
|
- dist/
|
|
|
|
stages:
|
|
- build
|
|
- deploy
|
|
- configure
|
|
- restart
|
|
|
|
build:
|
|
stage: build
|
|
tags:
|
|
- production
|
|
- shell
|
|
script:
|
|
- npm install
|
|
- ./node_modules/.bin/tsc
|
|
|
|
deploy:
|
|
stage: deploy
|
|
tags:
|
|
- production
|
|
- shell
|
|
script:
|
|
- sudo rm -rf /var/www/broadcaster
|
|
- sudo mkdir -p /var/www/broadcaster/node_modules
|
|
- sudo cp dist/server/server.js /var/www/broadcaster
|
|
- sudo cp node_modules/. -R /var/www/broadcaster/node_modules/.
|
|
- sudo chown http:http -R /var/www/broadcaster
|
|
|
|
configure:
|
|
stage: configure
|
|
tags:
|
|
- production
|
|
- shell
|
|
script:
|
|
- cat srvconfig/nginx.conf | sed -e 's/{domain}/broadcaster.adlerneves.com/g' -e 's/{port}/18961/g' | sudo tee /etc/nginx/sites-available/broadcaster-adlerneves-com-http.conf > /dev/null
|
|
- cat srvconfig/nginx.conf | sed -e 's/{domain}/broadcaster.sfner.com/g' -e 's/{port}/18961/g' | sudo tee /etc/nginx/sites-available/broadcaster-sfner-com-http.conf > /dev/null
|
|
- cat srvconfig/systemd.service | sed -e 's/{name}/broadcaster/g' -e 's/{port}/18961/g' | sudo tee /etc/systemd/system/ws-broadcaster.service > /dev/null
|
|
|
|
restart:
|
|
stage: restart
|
|
tags:
|
|
- production
|
|
- shell
|
|
script:
|
|
- sudo systemctl daemon-reload
|
|
- sudo systemctl reload nginx
|
|
- sudo systemctl enable ws-broadcaster.service
|
|
- sudo systemctl restart ws-broadcaster.service
|