You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.5 KiB
Docker
35 lines
1.5 KiB
Docker
# This is an attempt to automatically build patched RPM specs
|
|
# More or less broken, better use *.spec.patch for now (and copy src/qemu_driver.c to SOURCES/qemu-vitastor.c)
|
|
|
|
# Build packages for CentOS 8 inside a container
|
|
# cd ..; podman build -t qemu-el8 -v `pwd`/packages:/root/packages -f rpm/qemu-el8.Dockerfile .
|
|
|
|
FROM centos:8
|
|
|
|
WORKDIR /root
|
|
|
|
RUN rm -f /etc/yum.repos.d/CentOS-Media.repo
|
|
RUN dnf -y install centos-release-advanced-virtualization epel-release dnf-plugins-core rpm-build
|
|
RUN rm -rf /var/lib/dnf/*; dnf download --disablerepo='*' --enablerepo='centos-advanced-virtualization-source' --source qemu-kvm
|
|
RUN rpm --nomd5 -i qemu*.src.rpm
|
|
RUN cd ~/rpmbuild/SPECS && dnf builddep -y --enablerepo=PowerTools --spec qemu-kvm.spec
|
|
|
|
ADD patches/qemu-*-vitastor.patch /root/vitastor/patches/
|
|
|
|
RUN set -e; \
|
|
mkdir -p /root/packages/qemu-el8; \
|
|
rm -rf /root/packages/qemu-el8/*; \
|
|
rpm --nomd5 -i /root/qemu*.src.rpm; \
|
|
cd ~/rpmbuild/SPECS; \
|
|
PN=$(grep ^Patch qemu-kvm.spec | tail -n1 | perl -pe 's/Patch(\d+).*/$1/'); \
|
|
csplit qemu-kvm.spec "/^Patch$PN/"; \
|
|
cat xx00 > qemu-kvm.spec; \
|
|
head -n 1 xx01 >> qemu-kvm.spec; \
|
|
echo "Patch$((PN+1)): qemu-4.2-vitastor.patch" >> qemu-kvm.spec; \
|
|
tail -n +2 xx01 >> qemu-kvm.spec; \
|
|
perl -i -pe 's/(^Release:\s*\d+)/$1.vitastor/' qemu-kvm.spec; \
|
|
cp /root/vitastor/patches/qemu-4.2-vitastor.patch ~/rpmbuild/SOURCES; \
|
|
rpmbuild --nocheck -ba qemu-kvm.spec; \
|
|
cp ~/rpmbuild/RPMS/*/*qemu* /root/packages/qemu-el8/; \
|
|
cp ~/rpmbuild/SRPMS/*qemu* /root/packages/qemu-el8/
|