This repository has been archived on 2025-12-28. You can view files and clone it, but cannot push or open issues or pull requests.
inkletblot-com-v2/.gitlab-ci.yml
Solomon Laing 26cc45cb45 Merge branch 'develop' into 'master'
minor updates due to domain changes, project filtering and cicd

See merge request inkletblot/inkletblot-com-v2!15
2021-07-07 05:30:31 +00:00

60 lines
1.9 KiB
YAML

stages:
- build
- deploy
- test
develop-build-job:
stage: build
tags:
- node
script:
- echo "Install dependencies..."
- npm install
- npm run build
only:
- develop
master-build-job:
stage: build
tags:
- node
script:
- echo "Install dependencies..."
- npm install
- npm run build --prod
artifacts:
paths:
- dist/
only:
- master
deploy-job:
stage: deploy
tags:
- node
environment:
name: Production
url: "$Live_Server_IP"
before_script:
- 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y)'
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" >> ~/.ssh/config'
script:
- tar zcf ../inkletblot-com.tar.gz ./dist
- scp -o 'ProxyJump "$Live_Server_User"@"$Live_Server_IP"' -o StrictHostKeyChecking=no ../inkletblot-com.tar.gz "$Live_Server_User"@"$Live_Server_Target":/var/www/html
- ssh -J "$Live_Server_User"@"$Live_Server_IP" "$Live_Server_User"@"$Live_Server_Target" "rm -Rf /var/www/html/inkletblot-com_old && mv /var/www/html/inkletblot-com /var/www/html/inkletblot-com_old && mkdir /var/www/html/inkletblot-com_build && mkdir /var/www/html/inkletblot-com && tar zxf /var/www/html/inkletblot-com.tar.gz -C /var/www/html/inkletblot-com_build && mv /var/www/html/inkletblot-com_build/dist/inkletblot-com/* /var/www/html/inkletblot-com && rm -Rf /var/www/html/inkletblot-com_build && chmod -R 755 /var/www/html/inkletblot-com && exit"
only:
- master
test:
stage: test
tags:
- node
script:
- echo "I don't care about standard merges into dev as a build has to happen for a merge into master, I don't think there is a way to specify that so I need this here."
only:
- merge_requests