Skip to content

Update main.yml

Update main.yml #21

Workflow file for this run

name: Rebuild RPM
on:
- push
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Setup Docker
uses: docker/setup-buildx-action@v3
- name: Prepare Source
run: |
docker run --rm -v $(pwd):/workspace -w /workspace fedora:latest bash -c "
dnf install -y dnf-plugins-core rpmdevtools &&
dnf download --source $(find SPECS-PATCHES -name "*.patch" -exec basename {} .patch \;) &&
rpm -ivh --define '_topdir /workspace' *.src.rpm
"
- name: Apply Patches
run: |
chown runner:docker -R SPECS
ls -al SPECS/
for patch in SPECS-PATCHES/*.patch; do
file="SPECS/$(basename "$patch" .patch).spec"
if [[ -f "$file" ]]; then
patch "$file" < "$patch"
echo "Applied patch $patch to $file"
else
echo "Spec file $file does not exist for $patch"
fi
done
- name: Rebuild RPM
run: |
docker run --rm -v $(pwd):/workspace -w /workspace fedora:latest bash -c "
spectool --get-files --all SPECS/*.spec &&
dnf builddep -y SPECS/*.spec &&
rpmbuild --define '_topdir /workspace' -ba SPECS/*.spec
"
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: rpm-package
path: RPMS/