Files
LOGAR/runner

LOGAR Custom CI/CD Runner

This directory contains the Docker configuration for the custom LOGAR Build & Release Runner (gitea.eibl.tech/me0nline/logar-runner:latest).


Included Toolchains & Dependencies

  • Operating System: Ubuntu 22.04 LTS
  • Python Development:
    • python3, python3-dev, libpython3-dev (shared libraries for native ELF compilation)
    • python3-pip, python3-venv, python3-setuptools, python3-wheel
  • Native NSIS Cross-Compiler:
    • nsis, nsis-common, nsis-pluginapi (makensis CLI for compiling Windows .exe installers on Linux)
  • Build Essentials:
    • gcc, make, binutils, build-essential, libffi-dev, libssl-dev
  • Pre-installed Python Packages:
    • pyinstaller, distlib, cryptography, pefile, pgpy, fastapi, uvicorn, pydantic, requests

Workflow Integration

You can run CI/CD jobs directly inside this container image in .gitea/workflows/:

jobs:
  release:
    name: Build & Release Standalone Binaries
    runs-on: logar
    steps:
      - uses: actions/checkout@v4
      - run: python3 compilation/package_dist.py --target all

Building & Pushing the Runner

Trigger the automated workflow .gitea/workflows/build-runner.yml via the Gitea Actions UI (Actions → Build and Push LOGAR Runner → Run Workflow) or push changes to the runner/ folder.


Deploying the Runner Stack via Portainer

  1. In Gitea, navigate to Site Administration (or Repo Settings) → Actions → Runners → Create Runner. Copy the registration token.
  2. In Portainer, navigate to Stacks → Add stack.
  3. Set the name to logar-act-runner.
  4. Paste the contents of runner/docker-compose.yml into the Web editor (or link to this Git repository).
  5. In Environment variables, set:
    • GITEA_RUNNER_REGISTRATION_TOKEN: <your-gitea-runner-token>
  6. Click Deploy the stack.

The runner will automatically register with Gitea under the dedicated label logar, executing jobs inside the pre-configured gitea.eibl.tech/me0nline/logar-runner:latest container.