bootc-deb/.forgejo/workflows/test-build.yml
robojerk 1c74c5fe23
Some checks failed
Build Packages / Build libostree Backport (push) Failing after 1m37s
Build Packages / Build bootc Package (push) Has been skipped
Build Packages / Create Combined Artifacts (push) Has been skipped
Test Build / Test bootc Build (with existing libostree) (push) Failing after 51s
Remove all Node.js actions: use manual git clone and shell commands only
2025-07-21 00:27:17 +00:00

65 lines
No EOL
1.9 KiB
YAML

name: Test Build
on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]
workflow_dispatch:
env:
BOOTC_VERSION: "1.5.1"
jobs:
test-bootc-build:
name: Test bootc Build (with existing libostree)
runs-on: ubuntu-latest
container:
image: ubuntu:latest
steps:
- name: Setup build environment
run: |
apt update -y
apt install -y git cargo rustc pkg-config build-essential
- name: Checkout repository manually
run: |
# Clone the repository manually instead of using actions/checkout
git clone https://git.raines.xyz/robojerk/bootc-deb.git /tmp/bootc-deb
cp -r /tmp/bootc-deb/* .
cp -r /tmp/bootc-deb/.* . 2>/dev/null || true
- name: Check libostree version
run: |
pkg-config --modversion ostree-1 || echo "libostree not found"
dpkg -l | grep libostree || echo "No libostree packages installed"
- name: Clone bootc source
run: |
git clone --depth 1 --branch v${BOOTC_VERSION} https://github.com/containers/bootc.git bootc-${BOOTC_VERSION}
cd bootc-${BOOTC_VERSION}
- name: Apply compatibility patch
run: |
cd bootc-${BOOTC_VERSION}
patch -p1 < ../bootc-libostree-compatibility.patch
- name: Copy debian packaging
run: |
cd bootc-${BOOTC_VERSION}
cp -r ../debian .
- name: Test cargo build
run: |
cd bootc-${BOOTC_VERSION}
cargo build --release
- name: Test package build (if libostree available)
run: |
cd bootc-${BOOTC_VERSION}
if pkg-config --exists ostree-1; then
dpkg-buildpackage -us -uc -b
echo "Package build successful"
else
echo "Skipping package build - libostree not available"
fi