54 lines
1.6 KiB
YAML
54 lines
1.6 KiB
YAML
name: Build and Upload Multiple Debian RootFS Versions
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
|
|
jobs:
|
|
build-debian-variants:
|
|
runs-on: docker
|
|
|
|
strategy:
|
|
matrix:
|
|
version: [buster, bullseye, bookworm, docker-build]
|
|
|
|
steps:
|
|
- name: Checkout source
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Build Docker image for ${{ matrix.version }}
|
|
run: |
|
|
docker build \
|
|
--build-arg VERSION=${{ matrix.version }} \
|
|
-t fithwum/debian-${{ matrix.version }}-base .
|
|
|
|
- name: Run rootfs builder (pt1 script)
|
|
run: |
|
|
docker run --rm --privileged \
|
|
-v "$(pwd)":/output \
|
|
fithwum/debian-${{ matrix.version }}-base \
|
|
bash base-image-script/debian-${{ matrix.version }}_pt1.sh
|
|
|
|
- name: List output archive
|
|
run: ls -lh *.tar.bz2
|
|
|
|
- name: Clone and push to Gitea repo
|
|
run: |
|
|
git config --global user.name "${{ secrets.GIT_USERNAME }}"
|
|
git config --global user.email "${{ secrets.GIT_EMAIL }}"
|
|
|
|
git clone "${{ secrets.GITEA_REPO_URL }}" upload-repo
|
|
|
|
# Ensure target folder exists and clean old tarballs
|
|
mkdir -p upload-repo/${{ matrix.version }}
|
|
find upload-repo/${{ matrix.version }} -name '*.tar.bz2' -type f -delete
|
|
|
|
# Copy new tarball to version folder
|
|
cp *.tar.bz2 upload-repo/${{ matrix.version }}/
|
|
|
|
cd upload-repo
|
|
git add ${{ matrix.version }}/*.tar.bz2
|
|
git commit -m "Update ${{ matrix.version }} base image on $(date -u +'%Y-%m-%dT%H:%M:%SZ')"
|
|
git push
|