1 |
%define name smeserver-automysqlbackup |
2 |
%define version 3.0.RC6 |
3 |
%define release 32 |
4 |
%define rpmver 3.0.RC6 |
5 |
|
6 |
epoch: 2 |
7 |
Summary: automysqlbackup is a script to backup your msql database on sme8 |
8 |
Name: %{name} |
9 |
Version: %{version} |
10 |
Release: %{release}%{?dist} |
11 |
License: GPL |
12 |
Group: /Web/Application |
13 |
Source: %{name}-%{version}.tar.gz |
14 |
URL: http://sourceforge.net/projects/automysqlbackup/ |
15 |
BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot |
16 |
BuildArchitectures: noarch |
17 |
Requires: e-smith-base, e-smith-release >= 10 |
18 |
Requires: pax |
19 |
Requires: automysqlbackup >= 3.0.RC6-8 |
20 |
BuildRequires: e-smith-devtools |
21 |
Patch0: smeserver-automysqlbackup-AdjustableCronJob.patch |
22 |
Patch1: smeserver-automysqlbackup-enhanced-templates.patch |
23 |
Patch2: smeserver-automysqlbackup-fix-runmysql.patch |
24 |
Patch3: smeserver-automysqlbackup-update-permission-change.patch |
25 |
Patch4: smeserver-automysqlbackup-3.0.RC6-bz10806.errorsAndCreateUsers.patch |
26 |
Patch5: smeserver-automysqlbackup-3.0.RC6-Update-MySQL-Init-for-Mariadb.patch |
27 |
Patch6: smeserver-automysqlbackup-3.0.RC6-bz11561.patch |
28 |
Patch7: smeserver-automysqlbackup-3.0.RC6-bz11622.patch |
29 |
Patch8: smeserver-automysqlbackup-3.0.RC6-bz11970.Add-Maria-10x-support.patch |
30 |
Patch9: smeserver-automysqlbackup-3.0.RC6-bz11970.Add-Maria-10x-rename-templates.patch |
31 |
Patch10: smeserver-automysqlbackup-3.0.RC6-bz11970.update-cron.patch |
32 |
Patch11: smeserver-automysqlbackup-3.0.RC6-bz11970.Add-Maria-10x-fix-typos.patch |
33 |
Patch12: smeserver-automysqlbackup-3.0.RC6-bz11970.Add-Maria-10x-rename-cron-directories.patch |
34 |
Patch13: smeserver-automysqlbackup-3.0.RC6-bz11970.update-cron.2.patch |
35 |
Patch14: smeserver-automysqlbackup-3.0.RC6-bz11970.Add.Debug.patch |
36 |
Patch15: smeserver-automysqlbackup-3.0.RC6-remove-myserver-conf-template.patch |
37 |
Patch16: smeserver-automysqlbackup-3.0.RC6-bz12368-add-create-database.patch |
38 |
|
39 |
%description |
40 |
This RPM is an unofficial addon for the SME Server 10.x. |
41 |
The target audience is the Linux/E-smith administrator |
42 |
who wants to backup their mysql databases with an automatic way. |
43 |
This script is based on automysqlbackup V3.0 |
44 |
|
45 |
%changelog |
46 |
* Wed Jun 14 2023 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-32.sme |
47 |
- Add create_database to backups |
48 |
|
49 |
* Tue Oct 04 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-31.sme |
50 |
- Remove myserver.conf template expansion as template no longer exists |
51 |
|
52 |
* Mon Aug 22 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-30.sme |
53 |
- Forgot to change the version on the Changelog line below |
54 |
|
55 |
* Mon Aug 22 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-29.sme |
56 |
- Bump automysqlbackup requires |
57 |
|
58 |
* Mon Aug 15 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-28.sme |
59 |
- Add debug patch to conf files |
60 |
|
61 |
* Mon Aug 15 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-27.sme |
62 |
- Modify cron line again to add -bc option [SME: 11970] |
63 |
- Modify runmysqlbackup to add option and conf input from cron |
64 |
|
65 |
* Mon Aug 08 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-26.sme |
66 |
- Change cron directories to match templates [SME:11970] |
67 |
|
68 |
* Mon Aug 08 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-25.sme |
69 |
- Change rc2 to RC6 in config templates [SME:11970] |
70 |
- Fix DONT'T typo |
71 |
|
72 |
* Tue Jun 07 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-24.sme |
73 |
- Update cron [SME:11970] |
74 |
- Fix SQL in Maria 105 |
75 |
- Remove automysql event and leave just smeserver-automysqlbackup-update |
76 |
- Fix some createlinks |
77 |
- Modify inits - but still leaves log errors if version not installed |
78 |
|
79 |
* Tue Jun 07 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-23.sme |
80 |
- Modify backup directory names [SME: 11970] |
81 |
|
82 |
* Tue May 31 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-22.sme |
83 |
- Fix more typos in templates [SME: 11970] |
84 |
|
85 |
* Tue May 31 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-21.sme |
86 |
- Fix typos in templates [SME: 11970] |
87 |
|
88 |
* Mon May 30 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-20.sme |
89 |
- Correct template names [SME: 11970] |
90 |
- Add enable instructions |
91 |
|
92 |
* Mon May 09 2022 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-19.sme |
93 |
- Add Maria DB 10.x support [SME: 11970] |
94 |
- Requires Koozali SME Server v10.x |
95 |
|
96 |
* Sat Jun 05 2021 Terry Fage <terryf@ozemail.com.au> 3.0.RC6-18.sme |
97 |
- mariadb should not backup information_schema [SME: 11622] |
98 |
|
99 |
* Fri Apr 16 2021 Jean-Philippe Pialasse <tests@pialasse.com> 3.0.RC6-17.sme |
100 |
- fix automysql freeze server on reboot after post-upgrade event [SME: 11561] |
101 |
|
102 |
* Mon Oct 19 2020 Brian Read <brianr@bjsystems.co.uk> 3.0-RC6-16.sme |
103 |
- Initial Import to SME10 tree [SME: 11042] |
104 |
- Update-MySQL-Init-for-Mariadb |
105 |
|
106 |
* Sun Sep 22 2019 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.RC6-15.sme |
107 |
- fix multiple cause of error noise and performance [SME: 10806] |
108 |
* avoid parallel run of all backups, cron template rewritten |
109 |
* avoid multiple parallel or repeated chmod and chown |
110 |
* protect from undesired chmod or chown |
111 |
* consistent use of status for cron and conf templates |
112 |
* create backup user for mysql, mysql55 and mysql57 (Maria to do) |
113 |
* update mysql53 use to mysql51 as variable |
114 |
* migrate fragment to remove Mysql55 Mysql57 Mymaria Mysql53 if Mysql53 exist |
115 |
* remove default value in db for Mysql55 Mysql57 Mymaria Mysql53 |
116 |
* default as enabled in fragments for all automysql My* properties |
117 |
- create default user in dbs [SME: 10808] |
118 |
- tidy spec file |
119 |
|
120 |
* Mon Nov 26 2018 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-11.sme |
121 |
- fix runmysqlscript to allow for change in Backupdir key [SME: 10655] |
122 |
|
123 |
* Mon Nov 26 2018 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-10.sme |
124 |
- fix runmysqlbackup to allow for new databases [SME: 10654] |
125 |
|
126 |
* Fri Jul 06 2018 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.RC6-9.sme |
127 |
- Template configuration files |
128 |
- run automysqlbackup per conf directly from cron rather than runmysqlbackup |
129 |
- Add extra DB keys for mysql53, mysql55, mysql57 |
130 |
|
131 |
* Sun Apr 02 2017 stephane de Labrusse <stephdl@de-labrusse.fr> 3.0.RC6-8.sme |
132 |
- Added smeserver-automysqlbackup-AdjustableCronJob.patch |
133 |
- The time to run the Job is adjustable |
134 |
|
135 |
* Wed Sep 16 2015 stephane de Labrusse <stephdl@de-labrusse.fr> 3.0.RC6-6.sme |
136 |
- Added 'epoch: 2' |
137 |
|
138 |
* Sat Aug 22 2015 stephane de Labrusse <stephdl@de-labrusse.fr> 3.0.RC6-5.sme |
139 |
- Initial release to contribs9 |
140 |
|
141 |
* Sun Aug 17 2014 Stephane de Labrusse <stephdl@de-labrusse.fr> 3.0.RC6-4 |
142 |
- added my own patch against the --events warning |
143 |
--Warning: Skipping the data of table mysql.event. Specify the --events option explicitly. |
144 |
|
145 |
* Sun Oct 27 2013 Stephane de Labrusse <stephdl@de-labrusse.fr> 3.0.RC6.3 |
146 |
- split the contrib in two versions smeserver-automysqlbackup and automysqlbackup |
147 |
* Mon Apr 22 2013 Stephane de Labrusse <stephdl@de-labrusse.fr> |
148 |
- [3.0.RC6] version Based on automysqlbackup V3.0 RC6 |
149 |
* Mon Apr 08 2013 Stephane de Labrusse <stephdl@de-labrusse.fr> |
150 |
- [0.01] Initial version Based on automysqlbackup V3.0 RC6 |
151 |
|
152 |
%prep |
153 |
rm -rf $RPM_BUILD_ROOT |
154 |
|
155 |
%setup |
156 |
%patch0 -p1 |
157 |
%patch1 -p1 |
158 |
%patch2 -p1 |
159 |
%patch3 -p1 |
160 |
%patch4 -p1 |
161 |
%patch5 -p1 |
162 |
%patch6 -p1 |
163 |
%patch7 -p1 |
164 |
%patch8 -p1 |
165 |
%patch9 -p1 |
166 |
%patch10 -p1 |
167 |
%patch11 -p1 |
168 |
%patch12 -p1 |
169 |
%patch13 -p1 |
170 |
%patch14 -p1 |
171 |
%patch15 -p1 |
172 |
%patch16 -p1 |
173 |
|
174 |
%build |
175 |
perl createlinks |
176 |
find . \( -name .gitinclude -o -name .gitignore \) -print0 | \ |
177 |
xargs -0 rm -f |
178 |
|
179 |
%install |
180 |
/bin/rm -rf $RPM_BUILD_ROOT |
181 |
(cd root ;/usr/bin/find . -depth -print | /bin/cpio -dump $RPM_BUILD_ROOT) |
182 |
/bin/rm -f %{name}-%{version}-filelist |
183 |
/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \ |
184 |
--file /sbin/e-smith/runmysqlbackup 'attr(0750,root,root)' \ |
185 |
--dir /root/backup 'attr(0700,root,root)' \ |
186 |
--dir /root/backup/db 'attr(0700,root,root)' \ |
187 |
--dir /root/backup/db/daily 'attr(0700,root,root)' \ |
188 |
--dir /root/backup/db/fullschema 'attr(0700,root,root)' \ |
189 |
--dir /root/backup/db/latest 'attr(0700,root,root)' \ |
190 |
--dir /root/backup/db/monthly 'attr(0700,root,root)' \ |
191 |
--dir /root/backup/db/status 'attr(0700,root,root)' \ |
192 |
--dir /root/backup/db/tmp 'attr(0700,root,root)' \ |
193 |
--dir /root/backup/db/weekly 'attr(0700,root,root)' \ |
194 |
> %{name}-%{version}-filelist |
195 |
|
196 |
|
197 |
%files -f %{name}-%{version}-filelist |
198 |
|
199 |
%defattr(-,root,root) |
200 |
|
201 |
%clean |
202 |
rm -rf $RPM_BUILD_ROOT |
203 |
|
204 |
%pre |
205 |
|
206 |
%post |
207 |
#protect the backup folder |
208 |
chmod -R 700 /root/backup |
209 |
echo "=======================================================================" |
210 |
echo " " |
211 |
echo " To update your templates please run" |
212 |
echo " 'signal-event smeserver-automysqlbackup-update'" |
213 |
echo " " |
214 |
echo "=======================================================================" |
215 |
|
216 |
%preun |
217 |
%postun |
218 |
if [ $1 = 0 ] ; then |
219 |
SMEDB=automysqlbackup |
220 |
MYSQLUSER=backupuser |
221 |
echo "=======================================================================" |
222 |
echo " " |
223 |
echo " delete mysql user and revoke all permissions" |
224 |
# This section deletes backupuser for the standard DB |
225 |
mysql -u root -e "REVOKE ALL PRIVILEGES ON *.* FROM '$MYSQLUSER'@'localhost';" |
226 |
mysql -u root -e "DROP USER $MYSQLUSER@localhost;" |
227 |
echo " " |
228 |
echo "Do that for each DB - e.g mysq55, mysql57, mariadb101, maria105 etc" |
229 |
echo " " |
230 |
# Delete custom template fragment |
231 |
echo " Deleting configuration automysqlbackup" |
232 |
echo " " |
233 |
echo "=======================================================================" |
234 |
|
235 |
/sbin/e-smith/config delete $SMEDB |
236 |
fi |