From a8e7c0bc060277f5092ed09399c59b39243eebde89e2277c8dab8d6d5d030ab1 Mon Sep 17 00:00:00 2001 From: nick wang Date: Wed, 21 Jul 2021 08:03:23 +0000 Subject: [PATCH] Accepting request 907437 from home:wanghaisu:branches:network:ha-clustering:Factory Update to 9.18.0 OBS-URL: https://build.opensuse.org/request/show/907437 OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/drbd-utils?expand=0&rev=106 --- _service | 4 +- drbd-utils-9.14.0.tar.gz | 3 - drbd-utils-9.18.0.tar.gz | 3 + drbd-utils.changes | 33 ++++++++++ drbd-utils.spec | 62 ++++++++++++++++--- ...md-drbd-service-needs-network-online.patch | 56 +++++++++++++++++ 6 files changed, 146 insertions(+), 15 deletions(-) delete mode 100644 drbd-utils-9.14.0.tar.gz create mode 100644 drbd-utils-9.18.0.tar.gz create mode 100644 systemd-drbd-service-needs-network-online.patch diff --git a/_service b/_service index d6719a7..e47f7b1 100644 --- a/_service +++ b/_service @@ -5,10 +5,10 @@ drbd-utils - 9.13.0+git.%h + 9.18.0+git.%h master diff --git a/drbd-utils-9.14.0.tar.gz b/drbd-utils-9.14.0.tar.gz deleted file mode 100644 index 1d87484..0000000 --- a/drbd-utils-9.14.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:01fa37d6dbf4bb9e7007db11ec13d0d376f9701ab3393fe221789d5368b9a078 -size 1224291 diff --git a/drbd-utils-9.18.0.tar.gz b/drbd-utils-9.18.0.tar.gz new file mode 100644 index 0000000..885c574 --- /dev/null +++ b/drbd-utils-9.18.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4aab0d65104aac5fdb1371dc60f0b2afe80610836d8a888aec0748a6419a453 +size 1253169 diff --git a/drbd-utils.changes b/drbd-utils.changes index 422741f..544c810 100644 --- a/drbd-utils.changes +++ b/drbd-utils.changes @@ -1,3 +1,36 @@ +------------------------------------------------------------------- +Wed Jul 21 07:20:21 UTC 2021 - nick wang + +- Update to 9.18.0 + * build: remove rpm related targets + * drbdsetup,v84: fix minor compile warnings + * systemd: resource specific activation + * systemd: drbd-reactor promoter templates + * doc: fix maximum ping timeout + * doc: add man pages for the systemd templates + * drbdadm,v9: fix dstate for diskless volumes + * build/release: use lbvers.py + * drbd-attr: don't leak fd to drbdsetup + * doc: various fixes and additions + * drbdsetup,events2,v9: add backing_device + * build,Debian: rm dh-systemd dependency + * drbdsetup,events2,v9: fix --poll regression + * drbdmeta: fix bug with ALs with small final extents + * build,Debian: rm mail recommends + * drbdsetup,events2,v9: allow --poll without --now + * drbdsetup,invalidate: allow bitmap based resync after verify + * drbdadm,sh-ll-dev: change output to "none" if diskless + * drbd-attr/may_promote: fixes from 9.15.1 + * drbdadm,v9: allow set-gi in single node clusters + * drbsetup,events2,v9: diff(erential) output + * drbsetup,events2,v9: add --full output + * v9: allow resource rename, also in drbdmon + * drbdadm,v9: allow c-max-rate to be disabled + * New drbd-attr Pacemaker RA + * events2: handle mixed initial state and multicast events + * events2: fix regression to always print resync done +- Add patch systemd-drbd-service-needs-network-online.patch + ------------------------------------------------------------------- Wed Apr 21 10:15:08 UTC 2021 - Matthias Gerstner diff --git a/drbd-utils.spec b/drbd-utils.spec index 04b6c33..45ad7b3 100644 --- a/drbd-utils.spec +++ b/drbd-utils.spec @@ -27,7 +27,7 @@ # Only need po4a to build man from git source code %bcond_without prebuiltman Name: drbd-utils -Version: 9.14.0 +Version: 9.18.0 Release: 0 Summary: Distributed Replicated Block Device License: GPL-2.0-or-later @@ -41,6 +41,8 @@ Patch3: fence-after-pacemaker-down.patch Patch4: 0001-Disable-quorum-in-default-configuration-bsc-1032142.patch Patch5: move_fencing_from_disk_to_net_in_example.patch Patch6: pie-fix.patch +# In Upstream 9.18.0~9.19 +Patch7: systemd-drbd-service-needs-network-online.patch Provides: drbd-bash-completion = %{version} Provides: drbd-pacemaker = %{version} @@ -91,6 +93,7 @@ raid 1. It is a building block for setting up clusters. %patch4 -p1 %patch5 -p1 %patch6 -p1 +%patch7 -p1 %build export WANT_DRBD_REPRODUCIBLE_BUILD=1 @@ -133,9 +136,25 @@ rm -rf %{buildroot}%{_sysconfdir}/xen %pre %service_add_pre drbd.service +%service_add_pre drbd-lvchange@.service +%service_add_pre drbd-promote@.service +%service_add_pre drbd-reconfigure-suspend-or-error@.service +%service_add_pre drbd-services@.target +%service_add_pre drbd-wait-promotable@.service +%service_add_pre drbd@.service +%service_add_pre drbd@.target +%service_add_pre ocf.ra@.service %post %service_add_post drbd.service +%service_add_post drbd-lvchange@.service +%service_add_post drbd-promote@.service +%service_add_post drbd-reconfigure-suspend-or-error@.service +%service_add_post drbd-services@.target +%service_add_post drbd-wait-promotable@.service +%service_add_post drbd@.service +%service_add_post drbd@.target +%service_add_post ocf.ra@.service #May also overlap the $MAN_LINK in documentation/v9/Makefile.in for f in drbd drbdadm drbdmeta drbdsetup; do @@ -151,22 +170,38 @@ ln -sf drbdmon-9.0.8.gz %{_mandir}/ja/man8/drbdmon.8.gz %preun %service_del_preun drbd.service +%service_del_preun drbd-lvchange@.service +%service_del_preun drbd-promote@.service +%service_del_preun drbd-reconfigure-suspend-or-error@.service +%service_del_preun drbd-services@.target +%service_del_preun drbd-wait-promotable@.service +%service_del_preun drbd@.service +%service_del_preun drbd@.target +%service_del_preun ocf.ra@.service %postun %service_del_postun drbd.service +%service_del_postun drbd-lvchange@.service +%service_del_postun drbd-promote@.service +%service_del_postun drbd-reconfigure-suspend-or-error@.service +%service_del_postun drbd-services@.target +%service_del_postun drbd-wait-promotable@.service +%service_del_postun drbd@.service +%service_del_postun drbd@.target +%service_del_postun ocf.ra@.service %files -n drbd-utils -%defattr(-, root, root) %config(noreplace) %{_sysconfdir}/drbd.conf %config %{_sysconfdir}/bash_completion.d/drbdadm.sh %config(noreplace) %{_sysconfdir}/drbd.d/global_common.conf %config(noreplace) %{_sysconfdir}/multipath/conf.d/drbd.conf %{_tmpfilesdir}/drbd.conf -%doc %{_mandir}/man5/drbd.* -%doc %{_mandir}/man8/drbd* -%doc %{_mandir}/man7/ocf_linbit_drbd.* -%doc %{_mandir}/ja/man5/drbd.* -%doc %{_mandir}/ja/man8/drbd* +%{_mandir}/man5/drbd.* +%{_mandir}/man8/drbd* +%{_mandir}/man7/ocf* +%{_mandir}/man7/drbd* +%{_mandir}/ja/man5/drbd.* +%{_mandir}/ja/man8/drbd* %license COPYING %doc README.md %doc ChangeLog @@ -186,17 +221,24 @@ ln -sf drbdmon-9.0.8.gz %{_mandir}/ja/man8/drbdmon.8.gz %attr(755,root,root) %{_sysconfdir}/xen/scripts/block-drbd %endif %{_prefix}/lib/ocf/resource.d/linbit/drbd +%{_prefix}/lib/ocf/resource.d/linbit/drbd-attr %{_prefix}/lib/ocf/resource.d/linbit/drbd.shellfuncs.sh %{_udevrulesdir}/65-drbd.rules %{_unitdir}/drbd.service -%{_prefix}/lib/systemd/system/drbd.service -%defattr(-, root, root) +%{_unitdir}/drbd-lvchange@.service +%{_unitdir}/drbd-promote@.service +%{_unitdir}/drbd-reconfigure-suspend-or-error@.service +%{_unitdir}/drbd-services@.target +%{_unitdir}/drbd-wait-promotable@.service +%{_unitdir}/drbd@.service +%{_unitdir}/drbd@.target +%{_unitdir}/ocf.ra@.service %{_localstatedir}/lib/drbd %{_prefix}/lib/drbd /lib/drbd -/lib/drbd/drbd* %dir %{_prefix}/lib/ocf %dir %{_prefix}/lib/ocf/resource.d %dir %{_prefix}/lib/ocf/resource.d/linbit +%ghost %{_rundir}/drbd %changelog diff --git a/systemd-drbd-service-needs-network-online.patch b/systemd-drbd-service-needs-network-online.patch new file mode 100644 index 0000000..7e53c76 --- /dev/null +++ b/systemd-drbd-service-needs-network-online.patch @@ -0,0 +1,56 @@ +From b360f7680429326ba30ac94a71deec1d6ff5c6e5 Mon Sep 17 00:00:00 2001 +From: Lars Ellenberg +Date: Fri, 16 Jul 2021 15:23:55 +0200 +Subject: [PATCH 1/2] systemd: drbd@.service needs to pull in + network-online.target + +Otherwise during early boot it may be asked to configure the IP before it is available. +--- + documentation/v9/drbd@.service.adoc | 6 ++++++ + scripts/drbd@.service | 13 +++++++++++++ + 2 files changed, 19 insertions(+) + +diff --git a/documentation/v9/drbd@.service.adoc b/documentation/v9/drbd@.service.adoc +index 0358591b..d0d18b16 100644 +--- a/documentation/v9/drbd@.service.adoc ++++ b/documentation/v9/drbd@.service.adoc +@@ -17,6 +17,12 @@ This service unit is part of **drbd@**__RESNAME__**.target**, + and used to configure/reconfigure/unconfigure the DRBD __RESNAME__ + on start/reload/stop. + ++Since we want the network to be online before configuring DRBD, ++you may need to enable one of these: ++ ++`systemctl enable systemd-networkd-wait-online.service` or ++`systemctl enable NetworkManager-wait-online.service`. ++ + See Also + -------- + linkgit:drbd@.target[7], +diff --git a/scripts/drbd@.service b/scripts/drbd@.service +index 70832e37..5f47d4cf 100644 +--- a/scripts/drbd@.service ++++ b/scripts/drbd@.service +@@ -3,6 +3,19 @@ Description= (Re)configure DRBD resource %I + + PartOf=drbd@%i.target + ++# We really want the network to be online. ++# You may need to do one of ++# systemctl enable NetworkManager-wait-online.service ++# systemctl enable systemd-networkd-wait-online.service ++Wants=network-online.target sshd.service ++After=network-online.target nss-lookup.target sshd.service ++# If drbd-proxy is used, we want it to be running already. ++After=drbdproxy.service ++ ++# This is not intended to be combined with pacemaker, ++# but if combined, it should be ordered before pacemaker. ++Before=pacemaker.service ++ + # + # in an instantiation of this service, + # you may want to add "BindsTo=/dev/vg/lv" and "After=" for all backing devices +-- +2.16.4 +