ssh-key-action icon indicating copy to clipboard operation
ssh-key-action copied to clipboard

Feature Request: strip cr/lf endings from ssh key

Open dieselburner opened this issue 2 years ago • 1 comments

I'm running this action on Gitea, and today I have discovered Gitea saves secrets with cr/lf Windows style endings, which makes git clone fail, even though I run Gitea via Docker, and none of my computers have Windows:

Load key "/root/.ssh/id_rsa": invalid format
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.

I had to add this extra step to fix the issue:

- name: Fix SSH key
  run: sed -i 's/\r$//g' /root/.ssh/id_rsa

I do realize this issue is on Gitea side, which I will report, but would appreciate if you could implement same functionality but within this action and add one extra config option, for such scenarios. Like:

- name: Install SSH Key
  uses: shimataro/[email protected]
  with:
    key: ${{ secrets.SSH_KEY }}
    key_strip_cr: true
    known_hosts: ${{ secrets.SSH_KNOWN_HOSTS }}
    config: |
      Host git.example.com
        Port 12345
        User git

Thanks!

dieselburner avatar May 15 '23 15:05 dieselburner

Apparently this is not Gitea related issue, but rather browser: https://github.com/whatwg/html/issues/6647 I work on Chrome, and seems like Chrome converts to crlf endings, which means if one adds ssh key into repository secrets, it is impossible to use this key without such a fix which I mentioned above.

Based on these facts, I think stripping cr from ssh key by default would be great.

dieselburner avatar May 15 '23 15:05 dieselburner