Gerard Braad's Actions

Gerard Braad's GitHub Actions-related repositories

This organization contains Actions and container definitions that are used for the projects and organizations like:

Remove unwanted to maximize diskspace

- name: Remove unwanted stuff
  uses: gbraad-actions/remove-unwanted@v1

Shared configuration - Example

- name: Fetch configuration
  uses: gbraad-actions/shared-config@v1
  with:
    config_repo: https://github.com/gbraad/shared-config.git
    config_file: fedora.ini

- name: Use base settings
  run: |
    echo "Using base version $BASE_VERSION"
    echo "Using base image $BASE_IMAGE"

Install Tailscale using distro package manager and uses systemd - Example

- name: Tailscale
  uses: gbraad-actions/tailscale-action@v1
  with:
    authkey: ${{ secrets.TAILSCALE_AUTHKEY }}
    args: --ssh --accept-dns=false --operator=runner
- ...
- name: Hang around
  if: ${{ failure() }}
  run: sleep infinity  # this allows you to access the runner over SSH/Tailnet

Start Tailscale when preinstalled in (container) image

jobs:
  build:
    runs-on: ... # [ubunu-24.04|ubunu-24.04-arm]
    container: 
      image: ghcr.io/gbraad-actions/fedora:stable
      options: --privileged
    steps:
      - name: Tailscale Action
        uses: gbraad-actions/start-tailscale@v1
        with:
          authkey: ${{ secrets.TAILSCALE_AUTHKEY }}

Codium Server action

- name: Codium Server
  if: ${{ failure() }}
  uses: gbraad-actions/codium-server-action@v1

Code tunnel action

- name: Code tunnel
  if: ${{ failure() }}
  uses: gbraad-actions/code-tunnel-action@v1

Code serve web action

- name: Code serve web
  if: ${{ failure() }}
  uses: gbraad-actions/code-serveweb-action@v1

Machinefile executor

- name: Run Machinefile commands
  uses: gbraad-actions/machinefile-executor-action@v4
  with:
    containerfile: 'Containerfile'
    context: '.'

Setup virtualization support

- name: virtualization support
  uses: gbraad-actions/setup-virtualization@v1

Setup container tools

- name: Install containers tools
  uses: gbraad-actions/setup-container-tools@v1

Setup Ansible

- name: Install Ansible
  uses: gbraad-actions/setup-ansible@v1

Cleanup registry - Example

- uses: gbraad-actions/cleanup-untagged-packages@main
  with:
    packages: fedora, centos, ...
    token: ${{ secrets.PACKAGE_CLEANUP_TOKEN }}

Job containers ⚙️

    runs-on: ... # [ubunu-24.04|ubunu-24.04-arm]
    container: 
      image: ghcr.io/gbraad-actions/fedora:stable
      options: --privileged

CentOS Stream9 build container - centos-multi-arch

    runs-on: ... # [ubunu-24.04|ubunu-24.04-arm]
    container: 
      image: ghcr.io/gbraad-actions/centos:stable
      options: --privileged