Files
musiclist-server/.gitlab-ci.yml
2020-06-11 04:59:06 -04:00

40 lines
1.1 KiB
YAML

image: python:latest
stages:
- Analisis Estatico
- Deploy
before_script:
- apt-get update -y && apt-get upgrade -y
test:
stage: Analisis Estatico
script:
- pip install -r requirements.txt -r requirements-dev.txt
- flake8 .
deploy:
stage: Deploy
script:
## Install ssh-agent if not already installed
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client git -y )'
## Run ssh-agent (inside the build environment)
- eval $(ssh-agent -s)
## Add the SSH key stored in SSH_PRIVATE_KEY variable to the agent store
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -
## Create the SSH directory and give it the right permissions
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
## Use ssh-keyscan to scan the keys of the private server
- ssh-keyscan "142.93.158.54" >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
## Sync the project to the deploy route
- apt-get install rsync -y
- rsync -rvz ./ deployer@142.93.158.54:/var/www/musiclist.danielcortes.xyz/server/
- ssh deployer@142.93.158.54 'cd /var/www/musiclist.danielcortes.xyz/server/; sh deploy.sh'