ssh-setup/action.yml

28 lines
847 B
YAML

name: "ssh-setup"
description: "add a private ssh key"
inputs:
run-as:
default: "root"
description: "user to create ssh keys for"
required: false
ssh-key:
description: "private ssh key"
required: true
add-hosts:
description: "~/.ssh/known_hosts"
required: false
runs:
using: composite
steps:
- name: mkdir -p ~/.ssh
shell: bash
run: su ${{ inputs.run-as }} -c "mkdir -p ~/.ssh"
- name: add hosts
shell: bash
run: su ${{ inputs.run-as }} -c "echo \"${{ inputs.add-hosts }}\" | xargs ssh-keyscan > ~/.ssh/known_hosts"
- name: add ssh key
shell: bash
run: |
su ${{ inputs.run-as }} -c "echo \"${{ inputs.ssh-key }}\" | tr -d \"\r\" > ~/.ssh/id_ed25519"
chmod -R 600 /home/${{ inputs.run-as }}/.ssh
chmod 755 /home/${{ inputs.run-as }}/.ssh