Open VictorioBerra opened 1 month ago
name: Deploy to VM on: push: branches: - main - master pull_request: branches: - '*' jobs: build-and-deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@master - uses: actions/setup-node@v4 with: node-version: 20 - name: Build env: run: | npm ci npm run generate - name: Tailscale uses: tailscale/github-action@v2 with: oauth-client-id: ${{ secrets.TS_OAUTH_CLIENT_ID }} oauth-secret: ${{ secrets.TS_OAUTH_SECRET }} tags: tag:ci version: 1.66.4 - name: netmap run: tailscale status ping -c 4 ${{ secrets.HOST }} - name: copy file via ssh uses: appleboy/scp-action@master with: host: ${{ secrets.HOST }} username: ${{ secrets.USERNAME }} key: ${{ secrets.SSH_PRIVATE_KEY }} source: '.output/public/*' target: '/home/dockeruser/abc/pb_public/' overwrite: true strip_components: 2
The tailscale status and ping -c 4 ${{ secrets.HOST }} all work great. HOST is one of the node machine names.
tailscale status
ping -c 4 ${{ secrets.HOST }}
appleboy/scp-action@master gives me:
2024/06/02 20:59:42 error copy file to dest: , error message: dial tcp: lookup on 1111.222.333.444:53: no such host
I have solved this with an action to get and set the IP to output variables:
- name: netmap id: tailscale-netmap run: | ip=$(tailscale status | grep '${{ secrets.HOST }}' | awk '{print $1}') echo "LINODE_IP=$ip" >> "$GITHUB_OUTPUT" - name: copy file via ssh uses: appleboy/scp-action@0.1.7 with: host: ${{ steps.tailscale-netmap.outputs.LINODE_IP }} username: ${{ secrets.USERNAME }} key: ${{ secrets.SSH_PRIVATE_KEY }} source: '.output/public//${{ GITHUB_SHA }}' target: '/home/dockeruser/failreactor/' overwrite: true strip_components: 2
This is obviously super lame. What am I doing wrong?
The
tailscale status
andping -c 4 ${{ secrets.HOST }}
all work great. HOST is one of the node machine names.appleboy/scp-action@master gives me:
I have solved this with an action to get and set the IP to output variables:
This is obviously super lame. What am I doing wrong?