GitHub Action to setup common Homelab requirements like an SSH-Agent w/ SSH Certificate based auth & trust for self-signed CA Certs.
Find a file
commit-and-tag cdb9263f04
All checks were successful
Create Release / Create Release (push) Successful in 7s
chore(release): 1.3.4
2025-03-19 17:50:53 +00:00
.forgejo/workflows fix(ci): only copy licneses 2025-03-19 11:50:48 -06:00
LICENSES adjusting for license changes + commit-and-tag-version 2025-03-19 10:52:53 -06:00
.renovaterc.json5 adjusting for license changes + commit-and-tag-version 2025-03-19 10:52:53 -06:00
.version chore(release): 1.3.4 2025-03-19 17:50:53 +00:00
.versionrc fix(ci): adjust to .versionrc file w/ skipped steps & plain-text formatter 2025-03-19 11:31:24 -06:00
.versionrc.license fix(ci): adjust to .versionrc file w/ skipped steps & plain-text formatter 2025-03-19 11:31:24 -06:00
action.yml docs: updating step name 2025-03-19 11:13:20 -06:00
README.md adjusting for license changes + commit-and-tag-version 2025-03-19 10:52:53 -06:00

action-common-setup

A little composite action to consistently setup GitHub Actions across my homelab runner environments.

  • If the ssh-agent bin exists
    • Starts a fresh ssh-agent
    • Sets the env vars for future steps
  • Installs the step binary for step-ca commands
  • Bootstraps the environment for the Homelab SPM CA Trust
    • Tries to update any CA certs for the system that were missed.
    • Configures git commands for https://git.auengun.net to use the Root CA for trust.
  • If JWK_PASSWORD is defined:
    • Attempts to provision a ssh user certificate for the ${{ github.actor }} (username of the user that triggered the initial workflow run) for clone/inter-node actions.
    • Runs step ssh config to update known hosts and other params for easier ssh commands.
  • Clones the repo's code into the /workspace using https://code.forgejo.org/actions/checkout

Example

name: Terraform - Apply

on:
  pull_request:
    types: [labeled]

jobs:
  apply-on-label:
    name: Apply on Label
    if: contains(github.event.pull_request.labels.*.name, 'terraform/apply')
    runs-on: ubuntu-latest
    steps:
      - name: Homelab Setup
        uses: https://git.auengun.net/homelab/action-common-setup@main