2016-05-04 04:32:15 +02:00
|
|
|
#
|
|
|
|
# spec file for package pgbackrest
|
|
|
|
#
|
2018-03-10 21:11:23 +01:00
|
|
|
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
2016-05-04 04:32:15 +02:00
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
2018-10-29 08:01:08 +01:00
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
2016-05-04 04:32:15 +02:00
|
|
|
#
|
|
|
|
|
2018-07-12 10:01:33 +02:00
|
|
|
# Temporary fix for Leap 42.3
|
|
|
|
%if ! %{defined make_build}
|
|
|
|
%define make_build /usr/bin/make %{?_smp_mflags}
|
|
|
|
%endif
|
2018-03-10 21:11:23 +01:00
|
|
|
|
2016-05-04 04:32:15 +02:00
|
|
|
Name: pgbackrest
|
2018-03-10 21:11:23 +01:00
|
|
|
# Nobody can stop upstream to be too creative !
|
2018-10-29 08:01:08 +01:00
|
|
|
Version: 2.06
|
2016-05-04 04:32:15 +02:00
|
|
|
Release: 0
|
|
|
|
Summary: Reliable PostgreSQL Backup & Restore
|
2018-03-10 21:11:23 +01:00
|
|
|
License: MIT
|
2016-05-04 04:32:15 +02:00
|
|
|
Group: Productivity/Databases/Tools
|
2018-03-10 21:11:23 +01:00
|
|
|
URL: http://www.pgbackrest.org/
|
2018-01-27 09:16:00 +01:00
|
|
|
Source: https://github.com/pgbackrest/pgbackrest/archive/release/%{version}.tar.gz
|
2018-02-05 18:37:50 +01:00
|
|
|
Source1: pgbackrest-conf.patch
|
|
|
|
BuildRequires: openssl-devel
|
2018-05-28 11:56:30 +02:00
|
|
|
BuildRequires: perl
|
2018-02-05 18:37:50 +01:00
|
|
|
BuildRequires: perl-libxml-perl
|
2018-03-10 21:11:23 +01:00
|
|
|
BuildRequires: perl(DBD::Pg)
|
2018-02-05 18:37:50 +01:00
|
|
|
BuildRequires: perl(IO::Socket::SSL)
|
2018-07-12 10:01:33 +02:00
|
|
|
BuildRequires: perl(Digest::SHA)
|
|
|
|
BuildRequires: perl(JSON::PP)
|
2018-02-05 18:37:50 +01:00
|
|
|
%{perl_requires}
|
2018-03-10 21:11:23 +01:00
|
|
|
%if %{_arch} == "i586"
|
|
|
|
ExclusiveArch: do_not_build
|
|
|
|
%endif
|
2016-05-04 04:32:15 +02:00
|
|
|
|
|
|
|
%description
|
|
|
|
pgBackRest aims to be a simple, reliable backup and restore system that can
|
|
|
|
seamlessly scale up to the largest databases and workloads.
|
|
|
|
|
|
|
|
Instead of relying on traditional backup tools like tar and rsync, pgBackRest
|
|
|
|
implements all backup features internally and uses a custom protocol for
|
|
|
|
communicating with remote systems. Removing reliance on tar and rsync allows
|
|
|
|
for better solutions to database-specific backup challenges. The custom remote
|
|
|
|
protocol allows for more flexibility and limits the types of connections that
|
|
|
|
are required to perform a backup which increases security.
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q -n %{name}-release-%{version}
|
|
|
|
|
|
|
|
%build
|
2018-07-14 18:30:33 +02:00
|
|
|
# TODO upstream doesn't care about RPM_OPT_FLAGS
|
2018-03-10 21:11:23 +01:00
|
|
|
pushd src
|
2018-05-28 11:56:30 +02:00
|
|
|
%make_build
|
2018-03-10 21:11:23 +01:00
|
|
|
popd
|
|
|
|
|
2016-05-04 04:32:15 +02:00
|
|
|
%install
|
2018-03-10 21:11:23 +01:00
|
|
|
install -D -d -m 0700 %{buildroot}/%{_localstatedir}/lib/%{name}
|
|
|
|
install -D -d -m 0700 %{buildroot}%{_localstatedir}/log/%{name}
|
|
|
|
install -D -d -m 0700 %{buildroot}%{_localstatedir}/spool/%{name}
|
|
|
|
install -D -d -m 0755 %{buildroot}%{_sysconfdir}
|
|
|
|
install %{SOURCE1} %{buildroot}/%{_sysconfdir}/%{name}.conf
|
Accepting request 606763 from home:bruno_friedmann:branches:server:database:postgresql
- Update to bugfix & improvement 2.02 version
Parallel Asynchronous Archive Get and Configuration Includes
Released May 6, 2018
- Changes of previous 2.01 version from March 6th 2018
- Packaging :
+ Use make install (now fixed upstream) for bin
old: server:database:postgresql/pgbackrest
new: home:bruno_friedmann:branches:server:database:postgresql/pgbackrest rev None
Index: pgbackrest.changes
===================================================================
--- pgbackrest.changes (revision 10)
+++ pgbackrest.changes (revision 3)
@@ -1,4 +1,91 @@
-------------------------------------------------------------------
+Thu May 10 10:12:23 UTC 2018 - bruno@ioda-net.ch
+
+- Update to bugfix & improvement 2.02 version
+ Parallel Asynchronous Archive Get and Configuration Includes
+ Released May 6, 2018
+ + Bug Fixes:
+ - Fix directory syncs running recursively when only the
+ specified directory should be synced.
+ - Fix archive-copy throwing "path not found" error for incr/diff
+ backups.
+ - Fix failure in manifest build when two or more files in PGDATA
+ are linked to the same directory.
+ - Fix delta restore failing when a linked file is missing.
+ - Fix rendering of key/value and list options in help.
+ + Features:
+ - Add asynchronous, parallel archive-get. This feature maintains
+ a queue of WAL segments to help reduce latency when PostgreSQL
+ requests a WAL segment with restore_command.
+ - Add support for additional pgBackRest configuration files in the
+ directory specified by the --config-include-path option.
+ Add --config-path option for overriding the default base path
+ of the --config and --config-include-path option.
+ - Add repo-s3-token option to allow temporary credentials tokens
+ to be configured. pgBackRest currently has no way to request new
+ credentials so the entire command (e.g. backup, restore) must
+ complete before the credentials expire.
+ + Improvements:
+ - Update the archive-push-queue-max, manifest-save-threshold,
+ and buffer-size options to accept values in KB, MB, GB, TB, PB
+ where the multiplier is a power of 1024.
+ - Make backup/restore path sync more efficient. Scanning the
+ entire directory can be very expensive if there are a lot of
+ small tables. The backup manifest contains the path list so use
+ it to perform syncs instead of scanning the backup/restore path
+ - Show command parameters as well as command options in initial
+ info log message.
+ - Rename archive-queue-max option to archive-push-queue-max to
+ avoid confusion with the new archive-get-queue-max option.
+ The old option name will continue to be accepted.
+ + Documentation Bug Fixes:
+ - Update docs with 32-bit support and caveats.
+ 32-bit support was added in v1.26.
+ + Documentation Improvements:
+ - Add monitoring examples using PostgreSQL and jq.
+ - Add example of command section usage to archiving configuration.
+ - Remove documentation info --output=json as experimental.
+ - Update out-of-date description for the spool-path option.
+ + Test Suite Features:
+ - Use lcov for C unit test coverage reporting. Switch from
+ Devel::Cover because it would not report on branch coverage
+ for reports converted from gcov. Incomplete branch coverage
+ for a module now generates an error. Coverage of unit tests
+ is not displayed in the report unless they are incomplete for
+ either statement or branch coverage.
+- Changes of previous 2.01 version from March 6th 2018
+ + Bug Fixes:
+ - Fix --target-action and --recovery-option options being reported
+ as invalid when restoring with --type=immediate.
+ - Immediately error when a secure option (e.g. repo1-s3-key) is
+ passed on the command line. Since pgBackRest would not pass
+ secure options on to sub-processes an obscure error was thrown.
+ The new error is much clearer and provides hints about how to fix
+ the problem. Update command documentation to omit secure options
+ that cannot be specified on the command-line.
+ - Fix issue passing --no-config to embedded Perl.
+ - Fix issue where specifying log-level-stderr > warn would cause a
+ local/remote process to error on exit due to output found on
+ stderr when none was expected. The max value for a local/remote
+ process is now error.
+ - Fix manifest test in the check command when tablespaces are
+ present.
+ + Improvements:
+ - Error when multiple arguments are set in the config file for an
+ option that does not accept multiple arguments.
+ - Remove extraneous sudo commands from src/Makefile.
+ + Documentation Improvements:
+ - Show index in examples for indexed options, i.e. repo-*, pg-*.
+ - Simplify table of contents on command page by only listing
+ commands.
+ - Remove references to the C library being optional.
+ + Test Suite Features:
+ - Add CentOS/RHEL package builds.
+ - Use clang for static code analysis. Nothing found initially
+ except for some functions that should have been marked
+ __noreturn__.
+
+-------------------------------------------------------------------
Fri Mar 9 15:16:24 UTC 2018 - bruno@ioda-net.ch
- Packaging :
@@ -36,6 +123,8 @@
improve consistency. repo-* options are now indexed although
currently only one is allowed.
** This imply you need to revisit your pgbackrest.conf **
+- Packaging :
+ + Use make install (now fixed upstream) for bin
-------------------------------------------------------------------
Sun Feb 4 17:14:16 UTC 2018 - bruno@ioda-net.ch
Index: pgbackrest.spec
===================================================================
--- pgbackrest.spec (revision 10)
+++ pgbackrest.spec (revision 3)
@@ -18,7 +18,7 @@
Name: pgbackrest
# Nobody can stop upstream to be too creative !
-Version: 2.00
+Version: 2.02
Release: 0
Summary: Reliable PostgreSQL Backup & Restore
License: MIT
@@ -53,6 +53,7 @@
%setup -q -n %{name}-release-%{version}
%build
+#TODO upstream doesn't care about RPM_OPT_FLAGS
pushd src
make V=1 %{?_smp_mflags}
popd
@@ -70,9 +71,7 @@
install -D -d -m 0755 %{buildroot}%{_sysconfdir}
install %{SOURCE1} %{buildroot}/%{_sysconfdir}/%{name}.conf
cp -a lib/* %{buildroot}%{perl_vendorlib}/
-# Upstream makefile is nonsense sudo so use install
-# make install -C src DESTDIR=%%{buildroot}
-install -m 0755 src/%{name} %{buildroot}%{_bindir}/%{name}
+make install -C src DESTDIR=%{buildroot}
make pure_vendor_install -C libc DESTDIR=%{buildroot}
%perl_process_packlist
%perl_gen_filelist
Index: 2.02.tar.gz
===================================================================
Binary file 2.02.tar.gz (revision 3) added
Index: 2.00.tar.gz
===================================================================
Binary file 2.00.tar.gz (revision 10) deleted
OBS-URL: https://build.opensuse.org/request/show/606763
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=11
2018-05-13 14:39:04 +02:00
|
|
|
make install -C src DESTDIR=%{buildroot}
|
2018-02-05 18:37:50 +01:00
|
|
|
|
|
|
|
%check
|
2018-07-14 18:30:33 +02:00
|
|
|
# Tests are only available with Vagrant
|
|
|
|
# We just test that the binary works.
|
|
|
|
%{buildroot}/%{_bindir}/%{name} version
|
2018-02-05 18:37:50 +01:00
|
|
|
|
2018-07-14 18:30:33 +02:00
|
|
|
%files
|
2016-05-04 04:32:15 +02:00
|
|
|
%defattr(-,root,root)
|
2018-02-05 18:37:50 +01:00
|
|
|
%doc README.md
|
2018-03-10 21:11:23 +01:00
|
|
|
%license LICENSE
|
2018-02-05 18:37:50 +01:00
|
|
|
%config(noreplace) %attr (644,root,root) %{_sysconfdir}/%{name}.conf
|
|
|
|
# We still can do that as postgres user is system fixed
|
2018-03-10 21:11:23 +01:00
|
|
|
%attr(-,postgres,postgres) %{_localstatedir}/log/%{name}
|
2018-02-05 18:37:50 +01:00
|
|
|
%attr(-,postgres,postgres) %{_localstatedir}/lib/%{name}
|
2018-03-10 21:11:23 +01:00
|
|
|
%attr(-,postgres,postgres) %{_localstatedir}/spool/%{name}
|
2018-07-14 18:30:33 +02:00
|
|
|
%{_bindir}/%{name}
|
2018-02-05 18:37:50 +01:00
|
|
|
|
2018-03-10 21:11:23 +01:00
|
|
|
%changelog
|