Skip to content

Commit 804ebc4

Browse files
Merge pull request #35 from myvas/improve-system-service
Improve system service
2 parents e6d1843 + c534259 commit 804ebc4

File tree

1 file changed

+13
-10
lines changed

1 file changed

+13
-10
lines changed

.github/workflows/deploy.yml

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ env:
1414
REMOTE_APP_DIR: '/www/demo.auth.myvas.com'
1515
SERVICE_NAME: 'demo.auth.myvas.com'
1616
SSH_HOST: 'demo.auth.myvas.com'
17-
SSH_USERNAME: 'deploy-myvas-auth-demo'
1817

1918
jobs:
2019
build-and-deploy:
@@ -42,36 +41,40 @@ jobs:
4241
uses: appleboy/ssh-action@v1
4342
with:
4443
host: ${{ env.SSH_HOST }}
45-
username: ${{ env.SSH_USERNAME }}
44+
username: ${{ secrets.SSH_USERNAME }}
4645
key: ${{ secrets.SSH_PRIVATE_KEY }}
4746
script: |
4847
# Stop the service (if applicable)
4948
sudo systemctl stop ${{ env.SERVICE_NAME }} || true
5049
5150
- name: Save the SSH private key to a file
5251
run: |
53-
mkdir -p ~/.ssh
54-
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
55-
chmod 600 ~/.ssh/id_rsa
52+
if [ ! -f ~/.ssh/id_rsa ]; then
53+
mkdir -p ~/.ssh
54+
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
55+
chmod 600 ~/.ssh/id_rsa
56+
fi
5657
5758
- name: Add remote server to known_hosts
5859
run: |
59-
ssh-keyscan ${{ env.SSH_HOST }} >> ~/.ssh/known_hosts
60+
if ! grep -q "${{ env.SSH_HOST }}" ~/.ssh/known_hosts; then
61+
ssh-keyscan ${{ env.SSH_HOST }} >> ~/.ssh/known_hosts
62+
fi
6063
6164
- name: Copy the published app to the server
6265
run: |
63-
rsync --version
64-
rsync -avz --exclude 'demo.sqlite' -e "ssh -i ~/.ssh/id_rsa" ${{ env.PUBLISH_OUTPUT_DIR }}/ ${{ env.SSH_USERNAME }}@${{ env.SSH_HOST }}:${{ env.REMOTE_APP_DIR }}/
66+
rsync --version
67+
rsync -avz --exclude 'demo.sqlite' -e "ssh -i ~/.ssh/id_rsa" ${{ env.PUBLISH_OUTPUT_DIR }}/ ${{ secrets.SSH_USERNAME }}@${{ env.SSH_HOST }}:${{ env.REMOTE_APP_DIR }}/
6568
6669
- name: Start the service
6770
uses: appleboy/ssh-action@v1
6871
with:
6972
host: ${{ env.SSH_HOST }}
70-
username: ${{ env.SSH_USERNAME }}
73+
username: ${{ secrets.SSH_USERNAME }}
7174
key: ${{ secrets.SSH_PRIVATE_KEY }}
7275
script: |
7376
# Set permissions
74-
sudo chown -R '${{ env.SSH_USERNAME }}':'www-data' ${{ env.REMOTE_APP_DIR }}
77+
sudo chown -R ${{ secrets.SSH_USERNAME }}:www-data ${{ env.REMOTE_APP_DIR }}
7578
sudo chmod -R 775 ${{ env.REMOTE_APP_DIR }}
7679
7780
# Restart the service (if applicable)

0 commit comments

Comments
 (0)