Enable clustering (CTDB) support; (bsc#966271).

OBS-URL: https://build.opensuse.org/package/show/network:samba:STABLE/samba?expand=0&rev=522
This commit is contained in:
Lars Müller 2016-02-14 23:57:19 +00:00 committed by Git OBS Bridge
parent 1d15f76c69
commit c9d0da8944
4 changed files with 293 additions and 11 deletions

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:457eefb7ac9b42718fe0c5f0f81ba691ec09108610e89c088788eaa85c2c183c
size 13401
oid sha256:046b2db55008be2580c901a6cbb737ec33eb262329b043d55c7f4df24ef747b1
size 13363

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Sun Feb 14 18:41:34 UTC 2016 - lmuelle@suse.com
- Enable clustering (CTDB) support; (bsc#966271).
-------------------------------------------------------------------
Fri Feb 12 17:41:03 UTC 2016 - lmuelle@suse.com

View File

@ -18,6 +18,10 @@
%{!?_tmpfilesdir:%global _tmpfilesdir /usr/lib/tmpfiles.d}
%if 0%{?suse_version} > 1140 && 0%{?suse_version} != 1315
%define build_ctdb_pmda 1
%endif
Name: samba
BuildRequires: cups-devel
BuildRequires: cyrus-sasl-devel
@ -83,9 +87,6 @@ BuildRequires: keyutils-devel
%if 0%{?fedora_version} || 0%{?rhel_version} > 500
BuildRequires: keyutils-libs-devel
%endif
%if 0%{?suse_version} > 1000 || 0%{?fedora_version} || 0%{?rhel_version} || 0%{?mandriva_version}
BuildRequires: ctdb-devel > 1.0.105
%endif
%if 0%{?suse_version} > 1110
BuildRequires: fdupes
%endif
@ -119,6 +120,9 @@ BuildRequires: libavahi-devel
BuildRequires: systemd
BuildRequires: systemd-devel
%endif
%if 0%{?build_ctdb_pmda}
BuildRequires: libpcp-devel
%endif
%define samba_ver 4.3.4
%define samba_ver_suffix %nil
%if "%{samba_ver_suffix}" == ""
@ -141,7 +145,7 @@ BuildRequires: systemd-devel
%else
%define build_make_smp_mflags %{?jobs:-j%jobs}
%endif
%define SOURCE_TIMESTAMP 3583
%define SOURCE_TIMESTAMP 3584
%define BRANCH %{version}
%global with_mitkrb5 1
%global with_dc 0
@ -441,6 +445,65 @@ Source Timestamp: %{SOURCE_TIMESTAMP}
Branch: %{BRANCH}
%package -n ctdb
Summary: Clustered TDB
License: GPL-3.0+
Group: System/Daemons
%if 0%{?suse_version}
Requires(pre): %{?fillup_prereq}
%if 0%{?suse_version} > 1220
BuildRequires: systemd-rpm-macros
# bnc886095: The CTDB resource agent could be split out into a separate rpm,
# with corresponding ctdb and tdb-tools requirements. Until then, just add the
# tdb-tools requirement to ctdb.
Requires: tdb-tools
%else
Requires(pre): %{insserv_prereq}
%endif
%else
Requires(pre): /sbin/chkconfig
%endif
Requires(pre): coreutils
Requires(pre): /bin/mktemp
Requires(pre): /usr/bin/killall
Requires(pre): sed
%description -n ctdb
ctdb is the clustered database used by Samba
Source Timestamp: %{SOURCE_TIMESTAMP}
Branch: %{BRANCH}
%package -n ctdb-devel
Summary: Libraries and Header Files to Develop Programs with ctdb support
Group: Development/Libraries/C and C++
%description -n ctdb-devel
This package contains the static libraries and header files needed to
develop programs which make use of ctdb.
%if 0%{?build_ctdb_pmda}
%package -n ctdb-pcp-pmda
Summary: Performance Co-Pilot (PCP) monitoring agent
Group: System/Monitoring
%description -n ctdb-pcp-pmda
The CTDB Performance Co-Pilot (PCP) monitoring agent allows remote PCP
clients to view and capture detailed real-time performance metrics for
one or more cluster nodes.
%endif
%package -n ctdb-tests
Summary: CTDB clustered database test suite
Group: Development/Tools
%description -n ctdb-tests
Test suite for clustered database (CTDB).
%package -n libdcerpc-atsvc0
Summary: DCE/RPC AT scheduler service library
License: GPL-3.0+
@ -1151,7 +1214,11 @@ CONFIGURE_OPTIONS="\
--disable-rpath \
--disable-rpath-install \
--enable-debug \
%if 0%{?build_ctdb_pmda}
--enable-pmda \
%endif
--enable-fhs \
--with-cluster-support \
--with-pam \
--with-pammodulesdir=%{_lib}/security \
--with-piddir=%{PIDDIR} \
@ -1167,7 +1234,7 @@ CONFIGURE_OPTIONS="\
%if ! %with_dc
--without-ad-dc \
%endif
--bundled-libraries=NONE,${bundled_libraries_extra} \
--bundled-libraries=NONE,socket_wrapper,${bundled_libraries_extra} \
"
./configure ${CONFIGURE_OPTIONS}
make %{build_make_smp_mflags} \
@ -1202,11 +1269,13 @@ install -d -m 0755 -p \
%{buildroot}/%{_datadir}/omc/svcinfo.d \
%{buildroot}/%{_datadir}/samba/{LDAP,templates} \
%{buildroot}/%{_localstatedir}/adm \
%{buildroot}/%{_localstatedir}/lib/ctdb/persistent \
%{buildroot}/%{LOCKDIR}/{drivers/{WIN40,W32X86,W32MIPS,W32ALPHA,W32PPC,IA64,x64},netlogon,lock/msg.lock,printing,private/msg.sock,profiles,winbindd_privileged} \
%{buildroot}/%{LOGDIR} \
%{buildroot}/%{PIDDIR} \
%{buildroot}/%{_var}/adm/fillup-templates \
%{buildroot}/%{_var}/cache/krb5rcache \
%{buildroot}/%{_var}/log/ctdb \
%{buildroot}/%{_var}/run \
%{buildroot}/%{DOCDIR} \
%{buildroot}/%{DOCBOOKDIR} \
@ -1223,6 +1292,29 @@ rm \
%{buildroot}/%{_libdir}/samba/ldb/ldbsamba_extensions.so \
%endif
# CTDB
%if 0%{?suse_version}
install -m 0644 vendor-files/config/sysconfig.ctdb %{buildroot}/%{_var}/adm/fillup-templates
%else
install -m 0644 ctdb/config/ctdb.sysconfig ${RPM_BUILD_ROOT}/%{_sysconfdir}/sysconfig/ctdb
%endif
%if 0%{?suse_version} > 1220
install -m 0755 ctdb/config/ctdb.service %{buildroot}%{_unitdir}/ctdb.service
ln -s service %{buildroot}/%{_sbindir}/rcctdb
# create tmpfile conf
install -d -m 0755 %{buildroot}/%{_tmpfilesdir}
echo "d /run/ctdbd 0755 root root" >%{buildroot}/%{_tmpfilesdir}/ctdb.conf
%else
install -m 0755 ctdb/config/ctdb.init ${RPM_BUILD_ROOT}/%{INITDIR}/ctdb
ln -s %{_sysconfdir}/init.d/ctdb %{buildroot}/%{_sbindir}/rcctdb
%endif
mkdir %{buildroot}/%{_defaultdocdir}/ctdb
for file in README COPYING NEWS doc/examples doc/*.html doc/readonlyrecords.txt doc/recovery-process.txt ; do
cp -a ctdb/${file} %{buildroot}/%{_defaultdocdir}/ctdb
done
# sudo can be used by statd-callout, but is not needed
rm ${RPM_BUILD_ROOT}/%{_sysconfdir}/sudoers.d/ctdb
# utility scripts
scripts="creategroup mksmbpasswd.sh"
install -d -m 0755 examples/scripts
@ -1275,8 +1367,7 @@ for srv_name in nmb smb winbind; do
ln -s service %{buildroot}/%{_sbindir}/rc${srv_name}
done
install -m 0644 systemd/sysconfig.* %{buildroot}%_var/adm/fillup-templates
install -d -m 0755 %{buildroot}%{_prefix}/lib/tmpfiles.d
install -m 0644 -p ../packaging/systemd/samba.conf.tmp %{buildroot}%{_prefix}/lib/tmpfiles.d/samba.conf
install -m 0644 -p ../packaging/systemd/samba.conf.tmp %{buildroot}/%{_tmpfilesdir}/samba.conf
%else
for script in ${startScripts}; do
install -m 0755 "init/${script}${scriptSuffix}" \
@ -1611,6 +1702,47 @@ fi
%{?insserv_cleanup:%{insserv_cleanup}}
%endif
%pre -n ctdb
%if 0%{?suse_version} > 1220
%service_add_pre ctdb.service
%endif
%preun -n ctdb
%if 0%{?suse_version} > 1220
%service_del_preun ctdb.service
%endif
%if 0%{?suse_version} == 0
if [ $1 = 0 ] ; then
test -x /sbin/chkconfig && /sbin/chkconfig --del ctdb
fi
%endif
exit 0
%post -n ctdb
%if 0%{?suse_version}
%if 0%{?suse_version} > 1220
%{fillup_only}
%service_add_post ctdb.service
%{_bindir}/systemd-tmpfiles --create %{_tmpfilesdir}/ctdb.conf || :
%else
%{fillup_and_insserv}
%endif
%endif
%postun -n ctdb
%if 0%{?suse_version}
%if 0%{?suse_version} > 1220
%service_del_postun ctdb.service
%else
%{insserv_cleanup}
%endif
%else
if [ "$1" -ge "1" ]; then
%{INITDIR}/ctdb restart >/dev/null
fi
%endif
exit 0
%post -n %{libsmbclient_name} -p /sbin/ldconfig
%postun -n %{libsmbclient_name} -p /sbin/ldconfig
@ -2090,6 +2222,151 @@ fi
%doc %{_datadir}/susehelp
%endif
%files -n ctdb
%defattr(-,root,root)
%dir %{_sysconfdir}/ctdb
%if 0%{?suse_version}
%{_var}/adm/fillup-templates/sysconfig.ctdb
%else
%{_sysconfdir}/sysconfig/ctdb
%endif
%{_sysconfdir}/ctdb/notify.sh
%{_sysconfdir}/ctdb/ctdb-crash-cleanup.sh
%{_sysconfdir}/ctdb/debug-hung-script.sh
%{_sysconfdir}/ctdb/debug_locks.sh
%{_sysconfdir}/ctdb/functions
%{_sysconfdir}/ctdb/gcore_trace.sh
%{_sysconfdir}/ctdb/nfs-linux-kernel-callout
%{_sysconfdir}/ctdb/statd-callout
%if 0%{?suse_version} > 1220
%attr(644,root,root) %{_unitdir}/ctdb.service
%dir %{_tmpfilesdir}
%{_tmpfilesdir}/ctdb.conf
%ghost %dir /run/ctdbd
%else
%attr(755,root,root) %{INITDIR}/ctdb
%endif
%dir %{_sysconfdir}/ctdb/events.d
%config %{_sysconfdir}/ctdb/events.d/00.ctdb
%config %{_sysconfdir}/ctdb/events.d/01.reclock
%config %{_sysconfdir}/ctdb/events.d/10.external
%config %{_sysconfdir}/ctdb/events.d/10.interface
%config %{_sysconfdir}/ctdb/events.d/11.natgw
%config %{_sysconfdir}/ctdb/events.d/11.routing
%config %{_sysconfdir}/ctdb/events.d/13.per_ip_routing
%config %{_sysconfdir}/ctdb/events.d/20.multipathd
%config %{_sysconfdir}/ctdb/events.d/31.clamd
%config %{_sysconfdir}/ctdb/events.d/40.vsftpd
%config %{_sysconfdir}/ctdb/events.d/41.httpd
%config %{_sysconfdir}/ctdb/events.d/50.samba
%config %{_sysconfdir}/ctdb/events.d/60.nfs
%config %{_sysconfdir}/ctdb/events.d/62.cnfs
%config %{_sysconfdir}/ctdb/events.d/70.iscsi
%config %{_sysconfdir}/ctdb/events.d/91.lvs
%config %{_sysconfdir}/ctdb/events.d/40.fs_use
%config %{_sysconfdir}/ctdb/events.d/49.winbind
%config %{_sysconfdir}/ctdb/events.d/99.timeout
%{_sysconfdir}/ctdb/events.d/README
%dir %{_sysconfdir}/ctdb/nfs-checks.d
%config %{_sysconfdir}/ctdb/nfs-checks.d/00.portmapper.check
%config %{_sysconfdir}/ctdb/nfs-checks.d/10.status.check
%config %{_sysconfdir}/ctdb/nfs-checks.d/20.nfs.check
%config %{_sysconfdir}/ctdb/nfs-checks.d/30.nlockmgr.check
%config %{_sysconfdir}/ctdb/nfs-checks.d/40.mountd.check
%config %{_sysconfdir}/ctdb/nfs-checks.d/50.rquotad.check
%{_sysconfdir}/ctdb/nfs-checks.d/README
%dir %{_sysconfdir}/ctdb/notify.d
%{_sysconfdir}/ctdb/notify.d/README
%{_sbindir}/ctdbd
%{_sbindir}/ctdbd_wrapper
%{_sbindir}/rcctdb
%{_bindir}/ctdb
%{_bindir}/smnotify
%{_bindir}/ctdb_diagnostics
%{_bindir}/ctdb_event_helper
%{_bindir}/ctdb_run_cluster_tests
%{_bindir}/ctdb_run_tests
%{_bindir}/ltdbtool
%{_bindir}/onnode
%{_bindir}/ping_pong
%{_bindir}/ctdb_lock_helper
%dir %{_localstatedir}/lib/ctdb
%dir %{_localstatedir}/lib/ctdb/persistent
%dir %{_localstatedir}/log/ctdb
%ghost %dir %{_localstatedir}/run/ctdb
%{_mandir}/man1/ctdb.1.gz
%{_mandir}/man1/ctdbd.1.gz
%{_mandir}/man1/ctdbd_wrapper.1.gz
%{_mandir}/man1/ltdbtool.1.gz
%{_mandir}/man1/onnode.1.gz
%{_mandir}/man1/ping_pong.1.gz
%{_mandir}/man5/ctdbd.conf.5.*
%{_mandir}/man7/ctdb-statistics.7.*
%{_mandir}/man7/ctdb-tunables.7.*
%{_mandir}/man7/ctdb.7.*
%doc %{_defaultdocdir}/ctdb
%files -n ctdb-devel
%defattr(-,root,root)
%{_includedir}/samba-4.0/ctdb.h
%{_includedir}/samba-4.0/ctdb_client.h
%{_includedir}/samba-4.0/ctdb_private.h
%{_includedir}/samba-4.0/ctdb_protocol.h
%{_includedir}/samba-4.0/ctdb_typesafe_cb.h
%{_includedir}/samba-4.0/ctdb_version.h
%{_libdir}/pkgconfig/ctdb.pc
%if 0%{?build_ctdb_pmda}
%files -n ctdb-pcp-pmda
%defattr(-,root,root)
%dir %{_localstatedir}/lib/pcp
%dir %{_localstatedir}/lib/pcp/pmdas
%dir %{_localstatedir}/lib/pcp/pmdas/ctdb
%{_localstatedir}/lib/pcp/pmdas/ctdb/Install
%{_localstatedir}/lib/pcp/pmdas/ctdb/README
%{_localstatedir}/lib/pcp/pmdas/ctdb/Remove
%{_localstatedir}/lib/pcp/pmdas/ctdb/domain.h
%{_localstatedir}/lib/pcp/pmdas/ctdb/help
%{_localstatedir}/lib/pcp/pmdas/ctdb/pmdactdb
%{_localstatedir}/lib/pcp/pmdas/ctdb/pmns
%endif
%files -n ctdb-tests
%defattr(-,root,root)
%dir %{_libdir}/ctdb-tests
%{_libdir}/ctdb-tests/ctdb_bench
%{_libdir}/ctdb-tests/ctdb_fetch
%{_libdir}/ctdb-tests/ctdb_fetch_one
%{_libdir}/ctdb-tests/ctdb_fetch_readonly_loop
%{_libdir}/ctdb-tests/ctdb_fetch_readonly_once
%{_libdir}/ctdb-tests/ctdb_functest
%{_libdir}/ctdb-tests/ctdb_lock_tdb
%{_libdir}/ctdb-tests/ctdb_persistent
%{_libdir}/ctdb-tests/ctdb_porting_tests
%{_libdir}/ctdb-tests/ctdb_randrec
%{_libdir}/ctdb-tests/ctdb_store
%{_libdir}/ctdb-tests/ctdb_stubtest
%{_libdir}/ctdb-tests/ctdb_takeover_tests
%{_libdir}/ctdb-tests/ctdb_trackingdb_test
%{_libdir}/ctdb-tests/ctdb_transaction
%{_libdir}/ctdb-tests/ctdb_traverse
%{_libdir}/ctdb-tests/ctdb_update_record
%{_libdir}/ctdb-tests/ctdb_update_record_persistent
%{_libdir}/ctdb-tests/rb_test
%dir %{_datadir}/ctdb-tests
%dir %{_datadir}/ctdb-tests/eventscripts
%dir %{_datadir}/ctdb-tests/eventscripts/etc-ctdb
%{_datadir}/ctdb-tests/eventscripts/etc-ctdb/events.d
%{_datadir}/ctdb-tests/eventscripts/etc-ctdb/functions
%{_datadir}/ctdb-tests/eventscripts/etc-ctdb/nfs-checks.d
%{_datadir}/ctdb-tests/eventscripts/etc-ctdb/nfs-linux-kernel-callout
%{_datadir}/ctdb-tests/eventscripts/etc-ctdb/statd-callout
%dir %{_datadir}/ctdb-tests/scripts
%{_datadir}/ctdb-tests/scripts/common.sh
%{_datadir}/ctdb-tests/scripts/integration.bash
%{_datadir}/ctdb-tests/scripts/test_wrap
%{_datadir}/ctdb-tests/scripts/unit.sh
%files -n libdcerpc-atsvc0
%defattr(-,root,root)
%_libdir/libdcerpc-atsvc.so.0*

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1252676f84be4bf1fe43019f54e482d7e173d9719898c1b434c649dca4a2b846
size 52757
oid sha256:89a3c8b7cc2008606e40313d54a4231127806ed042f81600d01dfafdd491fff4
size 55796