Upload Debian Bullseye Package #21
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will upload a .deb Package | |
name: Upload Debian Bullseye Package | |
on: | |
workflow_dispatch: | |
jobs: | |
deploy: | |
strategy: | |
matrix: | |
codename: [buster, bullseye, bookworm, focal, jammy, lunar, mantic] | |
include: | |
- codename: buster | |
container: debian:buster | |
- codename: bullseye | |
container: debian:bullseye | |
- codename: bookworm | |
container: debian:bookworm | |
- codename: focal | |
container: ubuntu:focal | |
- codename: jammy | |
container: ubuntu:jammy | |
- codename: lunar | |
container: ubuntu:lunar | |
- codename: mantic | |
container: ubuntu:mantic | |
runs-on: ubuntu-latest | |
container: ${{ matrix.container }} | |
steps: | |
- uses: actions/checkout@v4 | |
# Environment Setup | |
- name: Install system dependencies | |
run: | | |
export DEBIAN_FRONTEND=noninteractive | |
apt-get update | |
apt-get install -y build-essential apt-utils libconfig-file-perl python3-pip python3-venv python3-pillow python3-wheel ruby ruby-dev rubygems git libjpeg-dev zlib1g-dev | |
apt-get install -y dpkg-sig || true | |
apt-get install -y debdelta || true | |
gem install dotenv -v 2.8.1 # New versions of dotenv don't support older versions of ruby in older Debian-like releases, we have a >0 constraint so install the last-known-good version. | |
gem install --no-document fpm | |
python3 -m venv .venv | |
. .venv/bin/activate | |
python3 -m pip install --upgrade pip | |
python3 -m pip install --upgrade setuptools virtualenv-tools3 wheel | |
deactivate | |
# Build Debian package | |
- name: Build debian package | |
run: | | |
. .venv/bin/activate | |
./build_deb_package.sh | |
deactivate | |
- name: Build debian package repository | |
env: | |
QMK_GPG_PRIVATE_KEY: ${{ secrets.QMK_GPG_PRIVATE_KEY }} | |
run: | | |
. .venv/bin/activate | |
./build_deb_repo.sh | |
deactivate | |
- name: Upload Debian Repo | |
uses: jakejarvis/s3-sync-action@master | |
with: | |
args: --acl public-read --follow-symlinks --delete | |
env: | |
AWS_S3_BUCKET: qmk-linux | |
AWS_ACCESS_KEY_ID: ${{ secrets.SPACES_ACCESS_KEY }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.SPACES_SECRET_KEY }} | |
AWS_S3_ENDPOINT: https://nyc3.digitaloceanspaces.com | |
SOURCE_DIR: 'deb_repo' | |
DEST_DIR: 'dists/${{ matrix.codename }}' |