Bad variables location #20
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy Docker Compose App to Private Server | |
on: | |
push: | |
branches: | |
- develop | |
jobs: | |
deploy: | |
runs-on: ubuntu-latest | |
environment: Production | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Set up SSH | |
run: | | |
echo "${{ secrets.SSH_PRIVATE_KEY }}" > private_key.pem | |
chmod 600 private_key.pem | |
eval $(ssh-agent -s) | |
ssh-add private_key.pem | |
ssh -o StrictHostKeyChecking=no ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} "echo 'SSH connection successful!'" | |
- name: Copy files to the server | |
run: | | |
rsync -avz -e "ssh -i private_key.pem -o StrictHostKeyChecking=no " \ | |
--exclude '.git' --exclude '.github' \ | |
./ ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:/tmp/c218/ | |
- name: Build and restart Docker Compose | |
run: | | |
ssh -i private_key.pem -o StrictHostKeyChecking=no -p ${{ secrets.SSH_PORT }} ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} " | |
cd /tmp/c218/ && | |
if [ -f docker-compose.prod.yml ]; then | |
export DBName=${{ secrets.DBName }} && | |
export Host=${{ secrets.Host }} && | |
export Password=${{ secrets.Password }} && | |
export User=${{ secrets.User }} && | |
export SecurityKey=${{ secrets.SecurityKey }} && | |
export RootPassword=${{ secrets.RootPassword }} && | |
docker-compose -f docker-compose.prod.yml down && | |
docker-compose -f docker-compose.prod.yml up -d --build && | |
docker image prune -f | |
else | |
echo 'docker-compose.prod.yml not found' | |
exit 1 | |
fi | |
" | |
- name: Clean up application files | |
run: | | |
ssh -i private_key.pem -o StrictHostKeyChecking=no ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} " | |
rm -rf /tmp/c218/* | |
rm /tmp/c218 | |
" | |
rm private_key.pem |