From 11ec9ad8740339741e720b671f4b090e44793cdb Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Sat, 3 Sep 2022 23:32:19 +0300 Subject: [PATCH] Release 0.8.0 - Implement automatic OSD activation via udev and simple on-disk superblock storage - Add a new `vitastor-disk` tool and merge all disk-related functionality there. Now it can prepare new OSD disks, upgrade plain old systemd units to the new scheme, resize OSD data area, manage OSD services by disk paths, manage superblocks, automatically check and disable disk cache, dump and write back journal and metadata. - Add a documentation section about `vitastor-disk` (read it if you want details!) - Install systemd services during package installation instead of the older method of manually creating them via separate shell scripts - Add a new `make-etcd` script that reuses /etc/vitastor/vitastor.conf to configure etcd - Allow to configure block_size, bitmap_granularity and immediate_commit per-pool - Fix "fatal error: tried to overwrite non-zero metadata entry" which was possible in some cases after unclean OSD shutdown (caused by old metadata entries not being zeroed) --- CMakeLists.txt | 2 +- csi/Makefile | 2 +- csi/deploy/004-csi-nodeplugin.yaml | 2 +- csi/deploy/007-csi-provisioner.yaml | 2 +- csi/src/config.go | 2 +- debian/changelog | 4 ++-- debian/vitastor.Dockerfile | 8 ++++---- patches/cinder-vitastor.py | 2 +- rpm/build-tarball.sh | 2 +- rpm/qemu-kvm-4.2-el7.spec.patch | 2 +- rpm/vitastor-el7.Dockerfile | 2 +- rpm/vitastor-el7.spec | 4 ++-- rpm/vitastor-el8.Dockerfile | 2 +- rpm/vitastor-el8.spec | 4 ++-- src/CMakeLists.txt | 2 +- src/vitastor.pc.in | 2 +- 16 files changed, 22 insertions(+), 22 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index fa75f29a1..4d4584f0d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,6 +2,6 @@ cmake_minimum_required(VERSION 2.8) project(vitastor) -set(VERSION "0.7.1") +set(VERSION "0.8.0") add_subdirectory(src) diff --git a/csi/Makefile b/csi/Makefile index 3c81f87af..000bfc436 100644 --- a/csi/Makefile +++ b/csi/Makefile @@ -1,4 +1,4 @@ -VERSION ?= v0.7.1 +VERSION ?= v0.8.0 all: build push diff --git a/csi/deploy/004-csi-nodeplugin.yaml b/csi/deploy/004-csi-nodeplugin.yaml index 6fc7f9edc..989c68d1d 100644 --- a/csi/deploy/004-csi-nodeplugin.yaml +++ b/csi/deploy/004-csi-nodeplugin.yaml @@ -49,7 +49,7 @@ spec: capabilities: add: ["SYS_ADMIN"] allowPrivilegeEscalation: true - image: vitalif/vitastor-csi:v0.7.1 + image: vitalif/vitastor-csi:v0.8.0 args: - "--node=$(NODE_ID)" - "--endpoint=$(CSI_ENDPOINT)" diff --git a/csi/deploy/007-csi-provisioner.yaml b/csi/deploy/007-csi-provisioner.yaml index edcd89cd4..eac3d9c39 100644 --- a/csi/deploy/007-csi-provisioner.yaml +++ b/csi/deploy/007-csi-provisioner.yaml @@ -116,7 +116,7 @@ spec: privileged: true capabilities: add: ["SYS_ADMIN"] - image: vitalif/vitastor-csi:v0.7.1 + image: vitalif/vitastor-csi:v0.8.0 args: - "--node=$(NODE_ID)" - "--endpoint=$(CSI_ENDPOINT)" diff --git a/csi/src/config.go b/csi/src/config.go index a3c1c7401..062da5421 100644 --- a/csi/src/config.go +++ b/csi/src/config.go @@ -5,7 +5,7 @@ package vitastor const ( vitastorCSIDriverName = "csi.vitastor.io" - vitastorCSIDriverVersion = "0.7.1" + vitastorCSIDriverVersion = "0.8.0" ) // Config struct fills the parameters of request or user input diff --git a/debian/changelog b/debian/changelog index 03ed29b7a..ba3fe61b1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,10 +1,10 @@ -vitastor (0.7.1-1) unstable; urgency=medium +vitastor (0.8.0-1) unstable; urgency=medium * Bugfixes -- Vitaliy Filippov Fri, 03 Jun 2022 02:09:44 +0300 -vitastor (0.7.1-1) unstable; urgency=medium +vitastor (0.8.0-1) unstable; urgency=medium * Implement NFS proxy * Add documentation diff --git a/debian/vitastor.Dockerfile b/debian/vitastor.Dockerfile index bb045fa3d..99a7cc6ed 100644 --- a/debian/vitastor.Dockerfile +++ b/debian/vitastor.Dockerfile @@ -34,8 +34,8 @@ RUN set -e -x; \ mkdir -p /root/packages/vitastor-$REL; \ rm -rf /root/packages/vitastor-$REL/*; \ cd /root/packages/vitastor-$REL; \ - cp -r /root/vitastor vitastor-0.7.1; \ - cd vitastor-0.7.1; \ + cp -r /root/vitastor vitastor-0.8.0; \ + cd vitastor-0.8.0; \ ln -s /root/fio-build/fio-*/ ./fio; \ FIO=$(head -n1 fio/debian/changelog | perl -pe 's/^.*\((.*?)\).*$/$1/'); \ ls /usr/include/linux/raw.h || cp ./debian/raw.h /usr/include/linux/raw.h; \ @@ -48,8 +48,8 @@ RUN set -e -x; \ rm -rf a b; \ echo "dep:fio=$FIO" > debian/fio_version; \ cd /root/packages/vitastor-$REL; \ - tar --sort=name --mtime='2020-01-01' --owner=0 --group=0 --exclude=debian -cJf vitastor_0.7.1.orig.tar.xz vitastor-0.7.1; \ - cd vitastor-0.7.1; \ + tar --sort=name --mtime='2020-01-01' --owner=0 --group=0 --exclude=debian -cJf vitastor_0.8.0.orig.tar.xz vitastor-0.8.0; \ + cd vitastor-0.8.0; \ V=$(head -n1 debian/changelog | perl -pe 's/^.*\((.*?)\).*$/$1/'); \ DEBFULLNAME="Vitaliy Filippov " dch -D $REL -v "$V""$REL" "Rebuild for $REL"; \ DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage --jobs=auto -sa; \ diff --git a/patches/cinder-vitastor.py b/patches/cinder-vitastor.py index 8eb47f6eb..7a82cf4ba 100644 --- a/patches/cinder-vitastor.py +++ b/patches/cinder-vitastor.py @@ -50,7 +50,7 @@ from cinder.volume import configuration from cinder.volume import driver from cinder.volume import volume_utils -VERSION = '0.7.1' +VERSION = '0.8.0' LOG = logging.getLogger(__name__) diff --git a/rpm/build-tarball.sh b/rpm/build-tarball.sh index 4e59a6cb2..fa9b66445 100755 --- a/rpm/build-tarball.sh +++ b/rpm/build-tarball.sh @@ -25,4 +25,4 @@ rm fio mv fio-copy fio FIO=`rpm -qi fio | perl -e 'while(<>) { /^Epoch[\s:]+(\S+)/ && print "$1:"; /^Version[\s:]+(\S+)/ && print $1; /^Release[\s:]+(\S+)/ && print "-$1"; }'` perl -i -pe 's/(Requires:\s*fio)([^\n]+)?/$1 = '$FIO'/' $VITASTOR/rpm/vitastor-el$EL.spec -tar --transform 's#^#vitastor-0.7.1/#' --exclude 'rpm/*.rpm' -czf $VITASTOR/../vitastor-0.7.1$(rpm --eval '%dist').tar.gz * +tar --transform 's#^#vitastor-0.8.0/#' --exclude 'rpm/*.rpm' -czf $VITASTOR/../vitastor-0.8.0$(rpm --eval '%dist').tar.gz * diff --git a/rpm/qemu-kvm-4.2-el7.spec.patch b/rpm/qemu-kvm-4.2-el7.spec.patch index 13ce9c806..0cb1036ad 100644 --- a/rpm/qemu-kvm-4.2-el7.spec.patch +++ b/rpm/qemu-kvm-4.2-el7.spec.patch @@ -58,7 +58,7 @@ +BuildRequires: gperftools-devel +BuildRequires: libusbx-devel >= 1.0.21 %if %{have_usbredir} - BuildRequires: usbredir-devel >= 0.7.1 + BuildRequires: usbredir-devel >= 0.8.0 %endif @@ -856,12 +861,13 @@ BuildRequires: virglrenderer-devel # For smartcard NSS support diff --git a/rpm/vitastor-el7.Dockerfile b/rpm/vitastor-el7.Dockerfile index ffb39b3d9..f659b9ee2 100644 --- a/rpm/vitastor-el7.Dockerfile +++ b/rpm/vitastor-el7.Dockerfile @@ -35,7 +35,7 @@ ADD . /root/vitastor RUN set -e; \ cd /root/vitastor/rpm; \ sh build-tarball.sh; \ - cp /root/vitastor-0.7.1.el7.tar.gz ~/rpmbuild/SOURCES; \ + cp /root/vitastor-0.8.0.el7.tar.gz ~/rpmbuild/SOURCES; \ cp vitastor-el7.spec ~/rpmbuild/SPECS/vitastor.spec; \ cd ~/rpmbuild/SPECS/; \ rpmbuild -ba vitastor.spec; \ diff --git a/rpm/vitastor-el7.spec b/rpm/vitastor-el7.spec index 547d2a3c9..e10268afa 100644 --- a/rpm/vitastor-el7.spec +++ b/rpm/vitastor-el7.spec @@ -1,11 +1,11 @@ Name: vitastor -Version: 0.7.1 +Version: 0.8.0 Release: 1%{?dist} Summary: Vitastor, a fast software-defined clustered block storage License: Vitastor Network Public License 1.1 URL: https://vitastor.io/ -Source0: vitastor-0.7.1.el7.tar.gz +Source0: vitastor-0.8.0.el7.tar.gz BuildRequires: liburing-devel >= 0.6 BuildRequires: gperftools-devel diff --git a/rpm/vitastor-el8.Dockerfile b/rpm/vitastor-el8.Dockerfile index 0367887e5..abd534bbc 100644 --- a/rpm/vitastor-el8.Dockerfile +++ b/rpm/vitastor-el8.Dockerfile @@ -35,7 +35,7 @@ ADD . /root/vitastor RUN set -e; \ cd /root/vitastor/rpm; \ sh build-tarball.sh; \ - cp /root/vitastor-0.7.1.el8.tar.gz ~/rpmbuild/SOURCES; \ + cp /root/vitastor-0.8.0.el8.tar.gz ~/rpmbuild/SOURCES; \ cp vitastor-el8.spec ~/rpmbuild/SPECS/vitastor.spec; \ cd ~/rpmbuild/SPECS/; \ rpmbuild -ba vitastor.spec; \ diff --git a/rpm/vitastor-el8.spec b/rpm/vitastor-el8.spec index ea292255d..235489644 100644 --- a/rpm/vitastor-el8.spec +++ b/rpm/vitastor-el8.spec @@ -1,11 +1,11 @@ Name: vitastor -Version: 0.7.1 +Version: 0.8.0 Release: 1%{?dist} Summary: Vitastor, a fast software-defined clustered block storage License: Vitastor Network Public License 1.1 URL: https://vitastor.io/ -Source0: vitastor-0.7.1.el8.tar.gz +Source0: vitastor-0.8.0.el8.tar.gz BuildRequires: liburing-devel >= 0.6 BuildRequires: gperftools-devel diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c9735914a..dca6dae88 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -15,7 +15,7 @@ if("${CMAKE_INSTALL_PREFIX}" MATCHES "^/usr/local/?$") set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") endif() -add_definitions(-DVERSION="0.7.1") +add_definitions(-DVERSION="0.8.0") add_definitions(-Wall -Wno-sign-compare -Wno-comment -Wno-parentheses -Wno-pointer-arith -fdiagnostics-color=always -I ${CMAKE_SOURCE_DIR}/src) if (${WITH_ASAN}) add_definitions(-fsanitize=address -fno-omit-frame-pointer) diff --git a/src/vitastor.pc.in b/src/vitastor.pc.in index 09115681c..ef8f5aa98 100644 --- a/src/vitastor.pc.in +++ b/src/vitastor.pc.in @@ -6,7 +6,7 @@ includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ Name: Vitastor Description: Vitastor client library -Version: 0.7.1 +Version: 0.8.0 Libs: -L${libdir} -lvitastor_client Cflags: -I${includedir}