name: Build QMK Firmware with Docker on: [push, pull_request] jobs: build: runs-on: local container: image: ubuntu steps: - name: Install packages run: | apt-get update && apt-get install -y nodejs git python3 python3-pip rsync apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null apt update apt install -y docker-ce docker-ce-cli containerd.io - name: Checkout repository uses: actions/checkout@v4 with: submodules: recursive - name: Build Docker image run: docker build --load -t qmk-builder . - name: Tag Docker image run: docker tag qmk-builder registry.home.dgvigil.dev/qmk-builder:v0.1 - name: Push Docker image run: docker push registry.home.dgvigil.dev/qmk-builder:v0.1