fix: resolve all 4 build job failures
Debian: Add -d flag to dpkg-buildpackage (skip dep check, rustup installed Rust not apt) RPM/Arch: Fix missing run: | YAML syntax in dependency steps Alpine: Fix abuild working directory - use /home/builduser explicitly instead of $(pwd) which referenced act cache path
This commit is contained in:
@ -116,7 +116,7 @@ jobs:
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y build-essential debhelper pkg-config libsystemd-dev
|
||||
- name: Build Debian package
|
||||
run: sudo dpkg-buildpackage -us -uc -b
|
||||
sudo dpkg-buildpackage -us -uc -b -d
|
||||
- name: Upload to Gitea Release
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
env:
|
||||
@ -143,6 +143,7 @@ jobs:
|
||||
. "$HOME/.cargo/env"
|
||||
echo "$HOME/.cargo/bin" >> "$GITHUB_PATH"
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
sudo dnf install -y gcc rpm-build systemd-devel pkg-config
|
||||
- name: Build release binary
|
||||
run: cargo build --release
|
||||
@ -213,6 +214,7 @@ jobs:
|
||||
. "$HOME/.cargo/env"
|
||||
echo "$HOME/.cargo/bin" >> "$GITHUB_PATH"
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
sudo pacman -Syu --noconfirm rust cargo systemd git base-devel gcc
|
||||
- name: Build release binary
|
||||
run: cargo build --release
|
||||
|
||||
@ -95,32 +95,38 @@ if [ "$(id -u)" = "0" ]; then
|
||||
echo "Running as root - creating build user for abuild..."
|
||||
adduser -D -s /bin/sh builduser 2>/dev/null || true
|
||||
addgroup builduser abuild 2>/dev/null || usermod -aG abuild builduser
|
||||
chown -R builduser:builduser "$(pwd)"
|
||||
chown -R builduser:builduser /root/packages 2>/dev/null || true
|
||||
|
||||
# Set up builduser home directory for abuild
|
||||
mkdir -p /home/builduser/.abuild
|
||||
cp /root/.abuild/* /home/builduser/.abuild/
|
||||
cp /root/.abuild/* /home/builduser/.abuild/ 2>/dev/null || true
|
||||
chown -R builduser:builduser /home/builduser/.abuild
|
||||
|
||||
|
||||
KEYFILE=$(ls /home/builduser/.abuild/*.rsa 2>/dev/null | head -1)
|
||||
if [ -z "$KEYFILE" ]; then
|
||||
KEYFILE=$(ls /home/builduser/.abuild/-*.rsa 2>/dev/null | head -1)
|
||||
fi
|
||||
|
||||
|
||||
echo "Key file: $KEYFILE"
|
||||
echo "PACKAGER_PRIVKEY=\"$KEYFILE\"" > /home/builduser/.abuild/abuild.conf
|
||||
chown builduser:builduser /home/builduser/.abuild/abuild.conf
|
||||
su - builduser -c "cd $(pwd) && abuild checksum && abuild -d -F && cp /home/builduser/packages/x86_64/*.apk ./releases/ 2>/dev/null || cp /home/builduser/packages/*.apk ./releases/ 2>/dev/null || ls -la /home/builduser/packages/"
|
||||
|
||||
# Run abuild as builduser with explicit working directory
|
||||
su - builduser -c "cd /home/builduser && abuild checksum && abuild -d -F"
|
||||
|
||||
# Copy APK from builduser packages to releases
|
||||
mkdir -p releases
|
||||
cp /home/builduser/packages/x86_64/*.apk releases/ 2>/dev/null || cp /home/builduser/packages/*.apk releases/ 2>/dev/null || find /home/builduser/packages -name "*.apk" -exec cp {} releases/ \; 2>/dev/null || true
|
||||
else
|
||||
abuild checksum
|
||||
abuild -F -r
|
||||
cp ~/packages/x86_64/*.apk releases/ 2>/dev/null || cp ~/packages/*.apk releases/ 2>/dev/null || true
|
||||
fi
|
||||
|
||||
# Copy to releases directory
|
||||
# Copy to releases directory (fallback for non-root builds)
|
||||
echo ""
|
||||
echo "Copying package to releases/..."
|
||||
mkdir -p releases
|
||||
cp ~/packages/x86_64/*.apk releases/ 2>/dev/null || cp /root/packages/x86_64/*.apk releases/ || find / -name "linux-patch-api-*.apk" -exec cp {} releases/ \; 2>/dev/null || true
|
||||
cp ~/packages/x86_64/*.apk releases/ 2>/dev/null || cp ~/packages/*.apk releases/ 2>/dev/null || find ~/packages -name "*.apk" -exec cp {} releases/ \; 2>/dev/null || true
|
||||
|
||||
echo ""
|
||||
echo "=== Build Complete ==="
|
||||
|
||||
Reference in New Issue
Block a user