I am trying to set up CI for my nodejs server. I would like to use github actions to ssh into my ec2 instance, where I can then git clone/pull my updated repo.
I can ssh into my ec2 instance on my local machine w no issues. I just do something like: "ssh -i keypar.pem [email protected]" and it connects. However, I can't seem to get a connection working on the worflow/actions script. Here is what I have in my workflow yml file:
name: CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Connect
env:
DEPLOY_KEY: ${{ secrets.EC2 }}
run: |
eval `ssh-agent`
ssh-add - <<< "${DEPLOY_KEY}"
ssh [email protected]
This script gets me the error "Error loading key "(stdin)": invalid format". Also when I look at the deploy key section under repo settings, it says the key has never been used.
(Obviously I would need to install, clone, and perform other steps in addition to what is listed above.)
In summary:
1 how to I fix the invalid format error?
2 how do I load and reference the key pair?
ssh-agent
mkdir -p ~/.ssh chmod 600 ~/.ssh/id_rsa && chmod 700 ~/.ssh ssh-add - <<< "${{ secrets.DEPLOY_KEY }}" ssh-keyscan -t rsa ec2-111111111.us-east-2.compute.amazonaws.com >> ~/.ssh/known_hosts ssh your-ssh-url-here – Towardly