Skip to content

Merge pull request #108 from mas-4/dependabot/pip/urllib3-2.2.2 #421

Merge pull request #108 from mas-4/dependabot/pip/urllib3-2.2.2

Merge pull request #108 from mas-4/dependabot/pip/urllib3-2.2.2 #421

Workflow file for this run

name: Deploy
on:
push:
branches:
- main # or the branch of your choice
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Copy repository to Digital Ocean server
env:
SSH_PRIVATE_KEY: ${{ secrets.SSH_KEY }}
SERVER_IP: ${{ secrets.IP_ADDRESS }}
SERVER_PORT: ${{ secrets.PORT }}
SERVER_USER: ${{ secrets.USERNAME }}
SERVER_DIRECTORY: ${{ secrets.DIRECTORY }}
EMAIL_CREDS: ${{ secrets.EMAIL_CRED_FILE }}
NETLIFY: ${{ secrets.NETLIFY }}
run: |
echo "Making ssh directory"
mkdir -p ~/.ssh
echo "Writing ssh key"
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa
echo "Setting permissions"
chmod 600 ~/.ssh/id_rsa
echo "Adding server to known hosts"
ssh-keyscan -p "$SERVER_PORT" -H "$SERVER_IP" > ~/.ssh/known_hosts
echo "Copying repository to server"
ssh -i ~/.ssh/id_rsa "$SERVER_USER"@"$SERVER_IP" -p "$SERVER_PORT" "git -C $SERVER_DIRECTORY pull origin main "
echo "Installing requirements"
ssh -i ~/.ssh/id_rsa "$SERVER_USER"@"$SERVER_IP" -p "$SERVER_PORT" "$SERVER_DIRECTORY/venv/bin/pip install -r $SERVER_DIRECTORY/requirements.txt"
ssh -i ~/.ssh/id_rsa "$SERVER_USER"@"$SERVER_IP" -p "$SERVER_PORT" "cd $SERVER_DIRECTORY; ./venv/bin/python setup.py build_ext --inplace"
echo "Running Migrations"
ssh -i ~/.ssh/id_rsa "$SERVER_USER"@"$SERVER_IP" -p "$SERVER_PORT" "cd $SERVER_DIRECTORY && ./venv/bin/alembic upgrade head"
echo "Writing creds"
echo "$EMAIL_CREDS" > .creds
scp -i ~/.ssh/id_rsa -P "$SERVER_PORT" .creds "$SERVER_USER"@"$SERVER_IP":/home/maudlin/maudlin2/
echo "Writing Netlify Creds"
echo "$NETLIFY" > .netlify_creds
scp -i ~/.ssh/id_rsa -P "$SERVER_PORT" .netlify_creds "$SERVER_USER"@"$SERVER_IP":/home/maudlin/maudlin2/