kemchenj / ssh-setup-action

Setup SSH

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ssh-setup-action

Setup SSH

Release Codacy

Table of Contents

About

This GitHub action helps you to setup SSH.

It support Node.js 20+ for Linux and macOS runners.

Using

name: Example

on: [push]

jobs:
  example:
    name: Example
    runs-on: ubuntu-latest
    steps:
    - name: Setup SSH
      uses: MrSquaare/ssh-setup-action@v3
      with:
        host: github.com
        private-key: ${{ secrets.SSH_PRIVATE_KEY }}

Environment variables

This action exports the following environment variables:

  • SSH_PATH: Path to SSH directory
  • SSH_AGENT_PID: PID of SSH agent
  • SSH_AUTH_SOCK: Path to SSH agent socket

Outputs

This action set the following outputs:

  • ssh-path: Path to SSH directory
  • ssh-agent-pid: PID of SSH agent
  • ssh-auth-sock: Path to SSH agent socket

Examples

Single key and clone

name: Clone repository

on: [push]

jobs:
  clone:
    name: Clone
    runs-on: ubuntu-latest
    steps:
    - name: Setup SSH
      uses: MrSquaare/ssh-setup-action@v3
      with:
        host: github.com
        private-key: ${{ secrets.SSH_PRIVATE_KEY }}
    - name: Clone repository
      run: git clone git@github.com:username/repository.git

Multiple keys and multiple clone

name: Clone repositories

on: [push]

jobs:
  clone:
    name: Clone
    runs-on: ubuntu-latest
    steps:
    - name: Setup GitHub SSH
      uses: MrSquaare/ssh-setup-action@v3
      with:
        host: github.com
        private-key: ${{ secrets.SSH_PRIVATE_KEY_GITHUB }}
        private-key-name: github
    - name: Setup GitLab SSH
      uses: MrSquaare/ssh-setup-action@v3
      with:
        host: gitlab.com
        private-key: ${{ secrets.SSH_PRIVATE_KEY_GITLAB }}
        private-key-name: gitlab
    - name: Setup Server SSH with custom port
      uses: MrSquaare/ssh-setup-action@v3
      with:
        host: 1.2.3.4
        port: 8000
        private-key: ${{ secrets.SSH_PRIVATE_KEY_GITLAB }}
        private-key-name: server
    - name: Clone GitHub repository
      run: git clone git@github.com:username/repository.git
    - name: Clone GitLab repository
      run: git clone git@gitlab.com:username/repository.git
    - name: SSH to server
      run: ssh -p 8000 ubuntu@1.2.3.4 'echo Hello'

Contributing

Bug reports, feature requests, other issues and pull requests are welcome. See CONTRIBUTING.md for more information.

License

Distributed under the MIT License. See LICENSE for more information.

About

Setup SSH

License:MIT License


Languages

Language:TypeScript 78.0%Language:Shell 19.3%Language:JavaScript 2.7%