ci: run directly on runner using its SSH key

This commit is contained in:
SW 2026-09-10 12:34:29 +02:00
parent 71f752c46e
commit 8b04de80e4

View file

@ -8,30 +8,24 @@ on:
jobs: jobs:
release: release:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container:
image: golang:1.27
steps: steps:
- name: Install tools - name: Install Go and packaging tools
run: | run: |
apt-get update apt-get update
apt-get install -y dpkg-dev git curl openssh-client apt-get install -y dpkg-dev git curl openssh-client
# Install Go if not present (works on Debian/Ubuntu runners)
- name: Setup SSH if ! command -v go &> /dev/null; then
env: GO_VERSION=1.27.1
FORGEJO_SSH_KEY: ${{ secrets.FORGEJO_SSH_KEY }} curl -sL "https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz" | tar -C /usr/local -xz
run: | export PATH="/usr/local/go/bin:${PATH}"
mkdir -p ~/.ssh echo "PATH=${PATH}" >> "$GITHUB_ENV"
printf '%s\n' "${FORGEJO_SSH_KEY}" > ~/.ssh/forgejo_runner fi
chmod 600 ~/.ssh/forgejo_runner go version
# Accept Forgejo SSH host key without prompting.
ssh-keyscan -p 554 git-ssh.janvete.com >> ~/.ssh/known_hosts 2>/dev/null || \
ssh-keyscan git-ssh.janvete.com >> ~/.ssh/known_hosts 2>/dev/null || true
echo "GIT_SSH_COMMAND=ssh -i ~/.ssh/forgejo_runner -o StrictHostKeyChecking=no -o UserKnownHostsFile=~/.ssh/known_hosts" >> "$GITHUB_ENV"
- name: Checkout source - name: Checkout source
env: env:
GIT_SSH_COMMAND: ssh -i ~/.ssh/forgejo_runner -o StrictHostKeyChecking=no -o UserKnownHostsFile=~/.ssh/known_hosts GIT_SSH_COMMAND: ssh -i /root/.ssh/forgejo_runner -o StrictHostKeyChecking=no
run: | run: |
git clone ssh://git@git-ssh.janvete.com:554/seth/Caddyview.git src git clone ssh://git@git-ssh.janvete.com:554/seth/Caddyview.git src
cd src cd src
@ -126,7 +120,7 @@ jobs:
- name: Update Homebrew tap - name: Update Homebrew tap
working-directory: src working-directory: src
env: env:
GIT_SSH_COMMAND: ssh -i ~/.ssh/forgejo_runner -o StrictHostKeyChecking=no -o UserKnownHostsFile=~/.ssh/known_hosts GIT_SSH_COMMAND: ssh -i /root/.ssh/forgejo_runner -o StrictHostKeyChecking=no
run: | run: |
VERSION=${{ github.ref_name }} VERSION=${{ github.ref_name }}
VER=${VERSION#v} VER=${VERSION#v}
@ -180,7 +174,7 @@ jobs:
- name: Update APT repository - name: Update APT repository
working-directory: src working-directory: src
env: env:
GIT_SSH_COMMAND: ssh -i ~/.ssh/forgejo_runner -o StrictHostKeyChecking=no -o UserKnownHostsFile=~/.ssh/known_hosts GIT_SSH_COMMAND: ssh -i /root/.ssh/forgejo_runner -o StrictHostKeyChecking=no
run: | run: |
VERSION=${{ github.ref_name }} VERSION=${{ github.ref_name }}
VER=${VERSION#v} VER=${VERSION#v}