mirror of
https://github.com/shimataro/ssh-key-action.git
synced 2025-06-19 22:52:10 +10:00

* Change code style to 1TBS
* refactor creating ".ssh" directoy
* Add Windows-2022 / macOS-11 / macOS-12 / Ubuntu-22.04
Drop Ubuntu-16.04
* Drop centos:8 (Docker container)
* add CentOS 8 Stream (Docker container)
* use YAML alias
* Revert "use YAML alias"
This reverts commit 1ddbc7fde8
.
* update .eslintrc
* move calling main to front
352 lines
9.2 KiB
YAML
352 lines
9.2 KiB
YAML
# https://help.github.com/en/articles/workflow-syntax-for-github-actions
|
|
|
|
name: Docker container (Ubuntu)
|
|
|
|
on:
|
|
- push
|
|
|
|
jobs:
|
|
ssh-pem:
|
|
name: Connect to github.com (PEM format)
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
fail-fast: false
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt install -y openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_PEM }}
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|
|
- name: git clone through SSH
|
|
run: git clone git@github.com:shimataro/ssh-key-action.git tmp
|
|
ssh-pkcs8:
|
|
name: Connect to github.com (PKCS8 format)
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
fail-fast: false
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt install -y openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_PKCS8 }}
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|
|
- name: git clone through SSH
|
|
run: git clone git@github.com:shimataro/ssh-key-action.git tmp
|
|
ssh-rfc4716:
|
|
name: Connect to github.com (RFC4716 format)
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
fail-fast: false
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt install -y openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_RFC4716 }}
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|
|
- name: git clone through SSH
|
|
run: git clone git@github.com:shimataro/ssh-key-action.git tmp
|
|
|
|
key_if_exists_replace-key_exists:
|
|
name: if_key_exists=replace / key exists
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt install -y openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key (dummy)
|
|
uses: ./.
|
|
with:
|
|
key: "dummy" # replaced
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
- name: Install SSH key (replace)
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_PEM }}
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
if_key_exists: replace
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|
|
- name: git clone through SSH
|
|
run: git clone git@github.com:shimataro/ssh-key-action.git tmp
|
|
key_if_exists_replace-key_doesnt_exist:
|
|
name: if_key_exists=replace / key doesn't exist
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt install -y openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key (replace)
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_PEM }}
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
if_key_exists: replace
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|
|
- name: git clone through SSH
|
|
run: git clone git@github.com:shimataro/ssh-key-action.git tmp
|
|
|
|
key_if_exists_ignore-key_exists:
|
|
name: if_key_exists=ignore / key exists
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt install -y openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key (dummy)
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_PEM }}
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
- name: Install SSH key (replace)
|
|
uses: ./.
|
|
with:
|
|
key: "dummy" # ignored
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
if_key_exists: ignore
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|
|
- name: git clone through SSH
|
|
run: git clone git@github.com:shimataro/ssh-key-action.git tmp
|
|
key_if_exists_ignore-key_doesnt_exist:
|
|
name: if_key_exists=ignore / key doesn't exist
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt install -y openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key (replace)
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_PEM }}
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
if_key_exists: ignore
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|
|
- name: git clone through SSH
|
|
run: git clone git@github.com:shimataro/ssh-key-action.git tmp
|
|
|
|
key_if_exists_fail-key_exists:
|
|
name: if_key_exists=fail / key exists
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt install -y openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key (dummy)
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_PEM }}
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
- name: Install SSH key (replace)
|
|
uses: ./.
|
|
with:
|
|
key: "dummy" # ignored
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
if_key_exists: fail
|
|
continue-on-error: true
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|
|
- name: git clone through SSH
|
|
run: git clone git@github.com:shimataro/ssh-key-action.git tmp
|
|
key_if_exists_fail-key_doesnt_exist:
|
|
name: if_key_exists=fail / key doesn't exist
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt install -y openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key (replace)
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_PEM }}
|
|
known_hosts: ${{ secrets.KNOWN_HOSTS }}
|
|
if_key_exists: fail
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|
|
- name: git clone through SSH
|
|
run: git clone git@github.com:shimataro/ssh-key-action.git tmp
|
|
|
|
known_hosts-unnecessary:
|
|
name: without known_hosts file
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-18.04
|
|
- ubuntu-20.04
|
|
- ubuntu-22.04
|
|
container:
|
|
- ubuntu:16.04
|
|
- ubuntu:18.04
|
|
- ubuntu:20.04
|
|
- ubuntu:22.04
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
apt update
|
|
apt -y install openssh-client git
|
|
- name: Checkout source codes
|
|
uses: actions/checkout@v2
|
|
- name: Install SSH key
|
|
uses: ./.
|
|
with:
|
|
key: ${{ secrets.SSH_KEY_PEM }}
|
|
known_hosts: unnecessary
|
|
- name: print created files
|
|
run: ls -l /root/.ssh
|