diff --git a/.cvsignore b/.cvsignore index e69de29..35c2eb9 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +Bucardo-4.4.0.tar.gz diff --git a/bucardo.spec b/bucardo.spec new file mode 100644 index 0000000..87bc30b --- /dev/null +++ b/bucardo.spec @@ -0,0 +1,108 @@ +%define realname Bucardo +Name: bucardo +Version: 4.4.0 +Release: 2%{?dist} +Summary: Postgres replication system for both multi-master and multi-slave operations + +Group: Applications/Databases +License: BSD +URL: http://bucardo.org/ +Source0: http://bucardo.org/downloads/Bucardo-%{version}.tar.gz +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +Source1: master-master-replication-example.txt + +BuildArch: noarch + +BuildRequires: perl(ExtUtils::MakeMaker) +BuildRequires: perl(DBI) +BuildRequires: perl(DBD::Pg) +BuildRequires: perl(IO::Handle) +BuildRequires: perl(Sys::Hostname) +BuildRequires: perl(Sys::Syslog) +BuildRequires: perl(Net::SMTP) +# available from fedora 10 +BuildRequires: perl(DBIx::Safe) + +Requires: perl(ExtUtils::MakeMaker) +Requires: postgresql-plperl + +Requires: perl(DBI) +Requires: perl(DBD::Pg) +Requires: perl(DBIx::Safe) +Requires: perl(IO::Handle) +Requires: perl(Sys::Hostname) +Requires: perl(Sys::Syslog) +Requires: perl(Net::SMTP) + +#testsuite +Requires: perl(Test::Simple) +Requires: perl(Test::Harness) + +%description +Bucardo is an asynchronous PostgreSQL replication system, allowing for both +multi-master and multi-slave operations.It was developed at Backcountry.com +primarily by Greg Sabino Mullane of End Point Corporation. + +%prep +%setup -q -n %{realname}-%{version} + + +%build + +%{__perl} Makefile.PL INSTALLDIRS=vendor + +make %{?_smp_mflags} + + +%install +rm -rf $RPM_BUILD_ROOT + +make pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT + +find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} + +find $RPM_BUILD_ROOT -depth -type d -exec rmdir {} 2>/dev/null \; + +sed -i -e '1d;2i#!/usr/bin/perl' bucardo_ctl + +rm -f $RPM_BUILD_ROOT/%{_bindir}/bucardo_ctl +install -Dp -m 755 bucardo_ctl $RPM_BUILD_ROOT/%{_sbindir}/bucardo_ctl +mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/run/bucardo + +install -Dp -m 644 %{SOURCE1} . + + + +%{_fixperms} %{buildroot} + +%clean +rm -rf $RPM_BUILD_ROOT + + +%files +%defattr(-,root,root,-) +%doc bucardo_ctl.html Bucardo.pm.html Changes +%doc INSTALL LICENSE README SIGNATURE TODO +%doc master-master-replication-example.txt +%{perl_vendorlib}/* +%{_mandir}/man1/* +%{_mandir}/man3/* +%{_sbindir}/bucardo_ctl +%{_datadir}/bucardo/bucardo.schema +%dir %{_localstatedir}/run/bucardo + +%changelog +* Sat Nov 14 2009 Itamar Reis Peixoto - 4.4.0-2 +- Removed some duplicated modules, changed Mail::Sendmail to Net::SMTP. + +* Sat Nov 14 2009 Itamar Reis Peixoto - 4.4.0-1 +- rebuild with latest version + +* Mon Oct 12 2009 David Fraser - 4.3.0-1 +- Rebuild with latest version + +* Sun Feb 01 2009 Itamar Reis Peixoto - 3.0.9-2 +- Don't strip tarball (removing DBIx-Safe and Test-Dynamic) + +* Thu Jan 29 2009 Itamar Reis Peixoto - 3.0.9-1 +- Initial RPM release diff --git a/import.log b/import.log new file mode 100644 index 0000000..ea124a2 --- /dev/null +++ b/import.log @@ -0,0 +1 @@ +bucardo-4_4_0-2_fc12:F-10:bucardo-4.4.0-2.fc12.src.rpm:1258477559 diff --git a/master-master-replication-example.txt b/master-master-replication-example.txt new file mode 100644 index 0000000..28b974a --- /dev/null +++ b/master-master-replication-example.txt @@ -0,0 +1,29 @@ +#be carefull this will erase bucardo database + +psql -U postgres -c 'drop database if exists bucardo' + +bucardo_ctl install + +psql -U postgres -c 'CREATE DATABASE one' + +psql -U postgres -d one -c " +CREATE TABLE customers +( + id serial NOT NULL, + nome character varying(50), + CONSTRAINT customers_pkey PRIMARY KEY (id) +) +" + +psql -U postgres -c 'CREATE DATABASE two TEMPLATE one' + +bucardo_ctl add db one + +bucardo_ctl add table customers herd=alpha standard_conflict=source ping=false db=one + +bucardo_ctl add db two + +bucardo_ctl add sync replica source=alpha targetdb=two type=swap + + +echo "now run bucardo_ctl start as root and test the replication inserting / changing data in one.customers and two.customers" diff --git a/sources b/sources index e69de29..2d5a19d 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +bf32b4dc7302baa1bc269dd34ff65da5 Bucardo-4.4.0.tar.gz