vitastor/rpm/vitastor-el7.Dockerfile

45 lines
1.8 KiB
Plaintext
Raw Normal View History

# Build packages for CentOS 7 inside a container
2021-02-26 01:02:45 +03:00
# cd ..; podman build -t vitastor-el7 -v `pwd`/packages:/root/packages -f rpm/vitastor-el7.Dockerfile .
2020-12-03 00:31:40 +03:00
# localedef -i ru_RU -f UTF-8 ru_RU.UTF-8
FROM centos:7
WORKDIR /root
RUN rm -f /etc/yum.repos.d/CentOS-Media.repo
RUN yum -y --enablerepo=extras install centos-release-scl epel-release yum-utils rpm-build
2020-12-03 00:31:40 +03:00
RUN yum -y install https://vitastor.io/rpms/centos/7/vitastor-release-1.0-1.el7.noarch.rpm
2021-12-02 10:19:47 +03:00
RUN yum -y install devtoolset-9-gcc-c++ devtoolset-9-libatomic-devel gcc make cmake gperftools-devel fio rh-nodejs12 jerasure-devel gf-complete-devel rdma-core-devel
RUN yumdownloader --disablerepo=centos-sclo-rh --source fio
RUN rpm --nomd5 -i fio*.src.rpm
RUN rm -f /etc/yum.repos.d/CentOS-Media.repo
RUN cd ~/rpmbuild/SPECS && yum-builddep -y fio.spec
ADD https://vitastor.io/rpms/liburing-el7/liburing-0.7-2.el7.src.rpm /root
RUN set -e; \
rpm -i liburing*.src.rpm; \
cd ~/rpmbuild/SPECS/; \
. /opt/rh/devtoolset-9/enable; \
rpmbuild -ba liburing.spec; \
2021-02-26 01:02:45 +03:00
mkdir -p /root/packages/liburing-el7; \
rm -rf /root/packages/liburing-el7/*; \
cp ~/rpmbuild/RPMS/*/liburing* /root/packages/liburing-el7/; \
cp ~/rpmbuild/SRPMS/liburing* /root/packages/liburing-el7/
2021-02-26 01:02:45 +03:00
RUN rpm -i `ls /root/packages/liburing-el7/liburing-*.x86_64.rpm | grep -v debug`
ADD . /root/vitastor
RUN set -e; \
cd /root/vitastor/rpm; \
sh build-tarball.sh; \
Release 0.6.9 New features: - Build Vitastor driver as part of QEMU - Implement renaming images in CLI (vitastor-cli modify --rename) - Add vitastor-cli alloc-osd and simple-offsets commands and use them in make-osd, thus removing the dependency on etcdctl - Make monitor remove stale deleted inode statistics from etcd automatically - Implement OSD address selection from a subnet, thus removing the need to specify OSD addresses in startup scripts explicitly Bug fixes: - Fix client failover in case of etcd shutdown or crash (make client survive etcd failures) - Stick to the last live etcd in OSD and mon to prevent random failures when one of etcds is down - Fix incorrect copying of data from journal to the data device which could lead to data corruption - Prefer local etcd IPs in OSD - Remove the total PG count restriction in optimize_change which was sometimes leading to inability to redistribute PGs over OSDs - Fix error response parsing on a failed pg state report - Fix slow linear writes with RDMA by changing default buffer settings - Fix possible 'TypeError' in openstack nova when using Vitastor cinder driver - Fix bugs in vitastor-cli create, ls, rm, modify commands Patch changes: - Add a patch for libvirt 7.6 - Add patches for QEMU 6.0 and 6.1 - Fix config file path XML location parsing in libvirt patches - Replace _ with - in QEMU options - Fix possible 'TypeError' in openstack nova when using Vitastor cinder driver - Fix possible crashes of QEMU block driver in case of incorrect options
2021-12-03 10:58:54 +03:00
cp /root/vitastor-0.6.9.el7.tar.gz ~/rpmbuild/SOURCES; \
cp vitastor-el7.spec ~/rpmbuild/SPECS/vitastor.spec; \
cd ~/rpmbuild/SPECS/; \
rpmbuild -ba vitastor.spec; \
2021-02-26 01:02:45 +03:00
mkdir -p /root/packages/vitastor-el7; \
rm -rf /root/packages/vitastor-el7/*; \
cp ~/rpmbuild/RPMS/*/vitastor* /root/packages/vitastor-el7/; \
cp ~/rpmbuild/SRPMS/vitastor* /root/packages/vitastor-el7/