on: push: branches: - main workflow_dispatch: jobs: format: name: run pull to sync on target message runs-on: ubuntu-latest if: "! contains(github.event.head_commit.message, 'Production')" steps: - name: cleanup first if any .ssh file before run: rm -rf ~/.ssh - name: install ssh keys # check this thread to understand why its needed: # https://stackoverflow.com/a/70447517 run: install -m 600 -D /dev/null ~/.ssh/id_rsa && echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa && ssh-keyscan -H ${{ secrets.SSH_HOST }} > ~/.ssh/known_hosts - name: connect and pull run: ssh fikyb-ssh@103.241.205.253 "cd /home/fikyb-ssh/htdocs/personalpage && git checkout main && git pull && exit" - name: cleanup run: rm -rf ~/.ssh