1 |
%define version 3.0.0 |
%define version 3.0.0 |
2 |
%define release 1 |
%define release 30 |
3 |
%define name smeserver-php |
%define name smeserver-php |
4 |
|
|
5 |
|
|
10 |
License: MIT |
License: MIT |
11 |
Group: Applications/System |
Group: Applications/System |
12 |
Source: %{name}-%{version}.tar.gz |
Source: %{name}-%{version}.tar.gz |
13 |
|
Patch0: smeserver-php-fpm-0.1.1-bz10871-ibay-php-fpm.patch |
14 |
|
Patch1: smeserver-php-fpm-0.1.1-bz10871-bz10335-fix1.patch |
15 |
|
Patch2: smeserver-php-fpm-0.1.1-bz10879-php-fpm_syslog.patch |
16 |
|
Patch3: smeserver-php-fpm-0.1.1-bz10877-pool-logs.patch |
17 |
|
Patch4: smeserver-php-3.0.0-bz10888-sys_temp_dir.patch |
18 |
|
Patch5: smeserver-php-fpm-0.1.1-bz0335-fix2.patch |
19 |
|
Patch6: smeserver-php-fpm-0.1.1-bz10335-fix3-systemd-units.patch |
20 |
|
Patch7: smeserver-php-3.0.0-bz10891-php.ini-allversions.patch |
21 |
|
Patch8: smeserver-php-3.0.0-bz10904-pass-auth-token-to-fpm.patch |
22 |
|
Patch9: smeserver-php-3.0.0-bz8787-phpmail.patch |
23 |
|
Patch10: smeserver-php-3.0.0-bz11014.sme-server.target.patch |
24 |
|
Patch11: smeserver-php-3.0.0-bz11087-webapps.patch |
25 |
|
Patch12: smeserver-php-3.0.0-bz11092.typo-upload.patch |
26 |
|
Patch13: smeserver-php-3.0.0-bz11173-bz11015-logging.patch |
27 |
|
Patch14: smeserver-php-3.0.0-bz11267-ibay-php-version.patch |
28 |
|
Patch15: smeserver-php-3.0.0-bz11287-fix-event-links.patch |
29 |
|
Patch16: smeserver-php-3.0.0-bz11325-logging.patch |
30 |
|
Patch17: smeserver-php-3.0.0-bz11287-pooldir.patch |
31 |
|
Patch18: smeserver-php-3.0.0-bz11295-addphp80.patch |
32 |
|
Patch19: smeserver-php-3.0.0-bz11410-sendmail.patch |
33 |
|
Patch20: smeserver-php-3.0.0-bz11413-php-perl-module.patch |
34 |
|
Patch21: smeserver-php-3.0.0-bz11401-empty-property-not-honored.patch |
35 |
|
Patch22: smeserver-php-3.0.0-bz10907-phpfile-exist.patch |
36 |
|
Patch23: smeserver-php-3.0.0-bz10890-allowphpembdedcode.patch |
37 |
|
Patch24: smeserver-php-3.0.0-bz11427-timeout.patch |
38 |
|
Patch25: smeserver-php-3.0.0-bz11411-uniformizePhpProperties.patch |
39 |
|
|
40 |
BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot |
BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot |
41 |
BuildArch: x86_64 |
BuildArch: x86_64 |
44 |
Requires: e-smith-base >= 5.6.0 |
Requires: e-smith-base >= 5.6.0 |
45 |
Provides: e-smith-php = %{version}-%{release} |
Provides: e-smith-php = %{version}-%{release} |
46 |
Obsoletes: e-smith-php < %{version} |
Obsoletes: e-smith-php < %{version} |
47 |
|
Provides: smeserver-webapps-common |
48 |
|
Provides: php(language) = 8.0 |
49 |
|
Provides: php(language) = 7.4 |
50 |
|
Provides: php(language) = 7.3 |
51 |
|
Provides: php(language) = 7.2 |
52 |
|
Provides: php(language) = 7.1 |
53 |
|
Provides: php(language) = 7.0 |
54 |
Requires: tmpwatch |
Requires: tmpwatch |
55 |
Requires: logrotate |
Requires: logrotate |
56 |
|
|
211 |
Requires: php74-php-opcache |
Requires: php74-php-opcache |
212 |
Requires: php74-php-fpm |
Requires: php74-php-fpm |
213 |
Requires: php74-php-mbstring |
Requires: php74-php-mbstring |
|
Requires: php74-php-mysql |
|
214 |
Requires: php74-php-json |
Requires: php74-php-json |
215 |
Requires: php74-php-bcmath |
Requires: php74-php-bcmath |
216 |
Requires: php74-php-intl |
Requires: php74-php-intl |
219 |
Requires: php74-php-snmp |
Requires: php74-php-snmp |
220 |
Requires: php74-php, php74-php-enchant , php74-php-pdo php74-php-tidy , php74-php-mysqlnd php74-php-pecl-zip |
Requires: php74-php, php74-php-enchant , php74-php-pdo php74-php-tidy , php74-php-mysqlnd php74-php-pecl-zip |
221 |
|
|
222 |
|
# PHP 8.0 |
223 |
|
Requires: php80-php-cli |
224 |
|
Requires: php80-php-ldap |
225 |
|
Requires: php80-php-imap |
226 |
|
Requires: php80-php-gd |
227 |
|
Requires: php80-php-xml |
228 |
|
Requires: php80-php-xmlrpc |
229 |
|
Requires: php80-php-soap |
230 |
|
Requires: php80-php-opcache |
231 |
|
Requires: php80-php-fpm |
232 |
|
Requires: php80-php-mbstring |
233 |
|
Requires: php80-php-json |
234 |
|
Requires: php80-php-bcmath |
235 |
|
Requires: php80-php-intl |
236 |
|
Requires: php80-php-pear |
237 |
|
Requires: php80-php-process |
238 |
|
Requires: php80-php-snmp |
239 |
|
Requires: php80-php, php80-php-enchant , php80-php-pdo php80-php-tidy , php80-php-mysqlnd php80-php-pecl-zip |
240 |
|
|
241 |
%description |
%description |
242 |
Manage PHP FPM pools, and switch between PHP versions easily |
Manage PHP FPM pools, and switch between PHP versions easily |
243 |
|
|
244 |
%prep |
%prep |
245 |
%setup -q -n %{name}-%{version} |
%setup -q -n %{name}-%{version} |
246 |
|
%patch0 -p1 |
247 |
|
%patch1 -p1 |
248 |
|
%patch2 -p1 |
249 |
|
%patch3 -p1 |
250 |
|
%patch4 -p1 |
251 |
|
%patch5 -p1 |
252 |
|
%patch6 -p1 |
253 |
|
%patch7 -p1 |
254 |
|
%patch8 -p1 |
255 |
|
%patch9 -p1 |
256 |
|
%patch10 -p1 |
257 |
|
%patch11 -p1 |
258 |
|
%patch12 -p1 |
259 |
|
%patch13 -p1 |
260 |
|
%patch14 -p1 |
261 |
|
%patch15 -p1 |
262 |
|
%patch16 -p1 |
263 |
|
%patch17 -p1 |
264 |
|
%patch18 -p1 |
265 |
|
%patch19 -p1 |
266 |
|
%patch20 -p1 |
267 |
|
%patch21 -p1 |
268 |
|
%patch22 -p1 |
269 |
|
%patch23 -p1 |
270 |
|
%patch24 -p1 |
271 |
|
%patch25 -p1 -F4 |
272 |
|
|
273 |
%build |
%build |
274 |
perl createlinks |
perl createlinks |
279 |
#%{__mkdir_p} root/%{_unitdir}/php-fpm.service.d/ |
#%{__mkdir_p} root/%{_unitdir}/php-fpm.service.d/ |
280 |
#echo '' > root/%{_unitdir}/php-fpm.service.d/php-fpm.conf |
#echo '' > root/%{_unitdir}/php-fpm.service.d/php-fpm.conf |
281 |
#enable by default |
#enable by default |
282 |
%{__mkdir_p} root/%{_presetdir} |
#%{__mkdir_p} root/%{_presetdir} |
283 |
echo 'enable php-fpm.service' >root/%{_presetdir}/80-koozali-php.preset |
#echo 'enable php-fpm.service' >root/%{_presetdir}/80-koozali-php.preset |
284 |
|
|
285 |
|
#drop in systemd file |
286 |
|
%{__mkdir_p} root/usr/lib/systemd/system/php-fpm.service.d |
287 |
|
echo "[Install]" > root/usr/lib/systemd/system/php-fpm.service.d/51koozali.conf |
288 |
|
echo "WantedBy=sme-server.target" > root/usr/lib/systemd/system/php-fpm.service.d/51koozali.conf |
289 |
|
|
290 |
for phpver in "55" "56" "70" "71" "72" "73" "74"; do |
%{__mkdir_p} root/etc/e-smith/templates.metadata/etc/logrotate.d/ |
291 |
|
for phpver in "55" "56" "70" "71" "72" "73" "74" "80"; do |
292 |
#needed folder |
#needed folder |
293 |
%{__mkdir_p} root/var/log/php/php$phpver/ |
%{__mkdir_p} root/var/log/php/php$phpver/ |
294 |
%{__mkdir_p} root/var/lib/php/php$phpver/{session,tmp,opcache,wsdlcache} |
%{__mkdir_p} root/var/lib/php/php$phpver/{session,tmp,opcache,wsdlcache} |
302 |
#%{__mkdir_p} root/%{_unitdir}/php$phpver-php-fpm.service.d/ |
#%{__mkdir_p} root/%{_unitdir}/php$phpver-php-fpm.service.d/ |
303 |
#echo '' > root/%{_unitdir}/php$phpver-php-fpm.service.d/php$phpver-php-fpm.conf |
#echo '' > root/%{_unitdir}/php$phpver-php-fpm.service.d/php$phpver-php-fpm.conf |
304 |
|
|
305 |
#enable by default php fpm |
##enable by default php fpm |
306 |
echo 'enable php'$phpver'-php-fpm.service' >>root/%{_presetdir}/80-koozali-php.preset |
#echo 'enable php'$phpver'-php-fpm.service' >>root/%{_presetdir}/80-koozali-php.preset |
307 |
|
|
308 |
|
#logrotate templates |
309 |
|
echo 'TEMPLATE_PATH="/etc/logrotate.d/php-fpm" |
310 |
|
MORE_DATA={ PHP_VERSION => '$phpver'}' > root/etc/e-smith/templates.metadata/etc/logrotate.d/php$phpver-php-fpm |
311 |
|
|
312 |
|
#drop in systemd file |
313 |
|
%{__mkdir_p} root/usr/lib/systemd/system/php$phpver-php-fpm.service.d |
314 |
|
echo "[Install]" > root/usr/lib/systemd/system/php$phpver-php-fpm.service.d/51koozali.conf |
315 |
|
echo "WantedBy=sme-server.target" > root/usr/lib/systemd/system/php$phpver-php-fpm.service.d/51koozali.conf |
316 |
|
|
317 |
done |
done |
318 |
|
|
319 |
#to add a new php version |
#to add a new php version |
320 |
#php5* |
#php5* |
321 |
for phpver in "55" ; do |
for phpver in "55" ; do |
322 |
#cp php56 metadata |
#cp php56 metadata |
323 |
cp -a root/etc/e-smith/templates.metadata/opt/remi/php56 root/etc/e-smith/templates.metadata/opt/remi/php$phpver |
mkdir -p root/etc/e-smith/templates.metadata/opt/remi/php$phpver |
324 |
|
cp -a root/etc/e-smith/templates.metadata/opt/remi/php56/* root/etc/e-smith/templates.metadata/opt/remi/php$phpver |
325 |
#sed inplace |
#sed inplace |
326 |
find root/etc/e-smith/templates.metadata/opt/remi/php$phpver -type f -print0 | xargs -0 sed -i 's/56/'$phpver'/g' |
find root/etc/e-smith/templates.metadata/opt/remi/php$phpver -type f -print0 | xargs -0 sed -i 's/56/'$phpver'/g' |
327 |
done |
done |
328 |
|
|
329 |
# php7* |
# php7* |
330 |
for phpver in "72" "73" "74"; do |
for phpver in "72" "73" "74" "80"; do |
331 |
#cp ph70 metada |
#cp ph70 metada |
332 |
cp -a root/etc/e-smith/templates.metadata/etc/opt/remi/php70 root/etc/e-smith/templates.metadata/etc/opt/remi/php$phpver |
mkdir -p root/etc/e-smith/templates.metadata/etc/opt/remi/php$phpver/ |
333 |
|
cp -a root/etc/e-smith/templates.metadata/etc/opt/remi/php70/* root/etc/e-smith/templates.metadata/etc/opt/remi/php$phpver/ |
334 |
#sed inplace |
#sed inplace |
335 |
find root/etc/e-smith/templates.metadata/etc/opt/remi/php$phpver -type f -print0 | xargs -0 sed -i 's/70/'$phpver'/g' |
find root/etc/e-smith/templates.metadata/etc/opt/remi/php$phpver -type f -print0 | xargs -0 sed -i 's/70/'$phpver'/g' |
336 |
done |
done |
351 |
--dir /var/lib/php/php/tmp 'attr(0770,root,www)' \ |
--dir /var/lib/php/php/tmp 'attr(0770,root,www)' \ |
352 |
--dir /var/lib/php/php/opcache 'attr(0770,root,www)' \ |
--dir /var/lib/php/php/opcache 'attr(0770,root,www)' \ |
353 |
--dir /var/lib/php/php/wsdlcache 'attr(0770,root,www)' \ |
--dir /var/lib/php/php/wsdlcache 'attr(0770,root,www)' \ |
354 |
`for phpver in "54" "55" "56" "70" "71" "72" "73" "74"; do echo -n "--dir /var/log/php/php$phpver attr(0770,root,www) --dir /var/lib/php/php$phpver/session attr(0770,root,www) --dir /var/lib/php/php$phpver/tmp attr(0770,root,www) --dir /var/lib/php/php$phpver/opcache attr(0770,root,www) --dir /var/lib/php/php$phpver/wsdlcache attr(0770,root,www) ";done ` \ |
`for phpver in "54" "55" "56" "70" "71" "72" "73" "74" "80"; do echo -n "--dir /var/log/php/php$phpver attr(0770,root,www) --dir /var/lib/php/php$phpver/session attr(0770,root,www) --dir /var/lib/php/php$phpver/tmp attr(0770,root,www) --dir /var/lib/php/php$phpver/opcache attr(0770,root,www) --dir /var/lib/php/php$phpver/wsdlcache attr(0770,root,www) ";done ` \ |
355 |
> %{name}-%{version}-filelist |
> %{name}-%{version}-filelist |
356 |
|
|
357 |
|
|
370 |
%preun |
%preun |
371 |
|
|
372 |
%changelog |
%changelog |
373 |
|
* Mon Mar 08 2021 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-30.sme |
374 |
|
- uniformize php related properties between ibays and php [SME: 11411] |
375 |
|
tidy fragments for php-fpm and ibays |
376 |
|
- revert patch for timeouts [SME: 11427] |
377 |
|
|
378 |
|
* Mon Mar 08 2021 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-28.sme |
379 |
|
- filter non existing php script [SME: 10907] |
380 |
|
- allow php embded files per ibay using AllowPHTML [SME: 10890] |
381 |
|
- add timeout property in case of need for long running script [SME: 11427] |
382 |
|
e.g. upgrade of a wiki |
383 |
|
|
384 |
|
* Mon Mar 08 2021 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-27.sme |
385 |
|
- String not honoured as php-fpm but as default [SME: 11401] |
386 |
|
|
387 |
|
* Sat Mar 06 2021 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-26.sme |
388 |
|
- improve sendmail parameter, force sender [SME: 11410] |
389 |
|
MailForceSender as property for php versions, ibays and pools |
390 |
|
- add perl module to help handling fpm version available [SME: 11413] |
391 |
|
|
392 |
|
* Mon Feb 22 2021 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-25.sme |
393 |
|
- add missing default db configuration for php80* [SME: 11378] |
394 |
|
|
395 |
|
* Sun Feb 21 2021 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-24.sme |
396 |
|
- allow php-pool-dirs to run from generik event [SME: 11287] |
397 |
|
- add php80 support [SME: 11295] |
398 |
|
|
399 |
|
* Wed Jan 27 2021 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-23.sme |
400 |
|
- fix php55 logrotate [SME: 11325] |
401 |
|
- cleanup remove services in sme-server.target.wants [SME: 10956] |
402 |
|
- remove usr/lib preset file from rpm [SME: 10958] |
403 |
|
|
404 |
|
* Fri Dec 25 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-22.sme |
405 |
|
- add WantedBy=sme-server.target for all php-fpm service files [SME: 11294] |
406 |
|
|
407 |
|
* Mon Dec 21 2020 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.0.21.sme |
408 |
|
- Fix createlinks typo missing event links [SME: 11287] |
409 |
|
- Fix typo |
410 |
|
|
411 |
|
* Thu Dec 17 2020 John Crisp <jcrisp@safeandsoundit.co.uk> 3.0.0.20.sme |
412 |
|
- Fix individual PHP version for ibay [SME: 11267] |
413 |
|
|
414 |
|
* Sun Dec 13 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-19.sme |
415 |
|
- fix wrong syntax = in place of eq [SME: 11173] |
416 |
|
thanks to Terry Fage |
417 |
|
|
418 |
|
* Mon Dec 07 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-18.sme |
419 |
|
- fix logrotate error because parent directory has insecure permissions [SME: 11173] |
420 |
|
|
421 |
|
* Wed Nov 18 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-17.sme |
422 |
|
- fix warning: ~ action is deprecated with rsyslog [SME: 11015] |
423 |
|
- fix logrotate error because parent directory has insecure permissions [SME: 11173] |
424 |
|
|
425 |
|
* Mon Nov 09 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-16.sme |
426 |
|
- fix typo for upload_tmp_dir [SME: 11092] |
427 |
|
|
428 |
|
* Sun Nov 08 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-15.sme |
429 |
|
- improve integration of webapps : virtualhost and event [SME: 11087] |
430 |
|
|
431 |
|
* Wed Sep 30 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-14.sme |
432 |
|
- enable php services for sme-server.target [SME: 11014] |
433 |
|
|
434 |
|
* Tue Jun 23 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-13.sme |
435 |
|
- move and fix link to start services units [SME: 10960] |
436 |
|
|
437 |
|
* Fri Mar 27 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-12.sme |
438 |
|
- fix typo in smeserver-php-3.0.0-bz10904-pass-auth-token-to-fpm.patch [SME: 10904] |
439 |
|
|
440 |
|
* Thu Mar 26 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-11.sme |
441 |
|
- help monitoring email sent by php [SME: 8787] |
442 |
|
|
443 |
|
* Thu Mar 26 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-9.sme |
444 |
|
- move auto_prepend_file from php.ini to php-fpm.d [SME: 10904] |
445 |
|
add /usr/share/php in open_basedir if dfined to allow execution of auto_prepend_file |
446 |
|
- fix templates-metadata path fot php 55 72 73 74 |
447 |
|
|
448 |
|
* Tue Mar 24 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-8.sme |
449 |
|
- transfer SERVER auth variables from httpd server to php-fpm pool [SME: 10904] |
450 |
|
this allow easy auth for php app using httpd auth as if using php module |
451 |
|
|
452 |
|
* Tue Mar 24 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-7.sme |
453 |
|
- templating all php.ini for all available version [SME: 10891] |
454 |
|
expanded using webapps-update, smeserver-php-update, console-save and bootstrap-console-save |
455 |
|
Values are those from php configuration key, unless defined for the php$VERSION key. |
456 |
|
only one template for all, using templates.metadata and conditions vhen needed. |
457 |
|
reworked the content of the php.ini to have it uptodate |
458 |
|
|
459 |
|
* Wed Mar 11 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-6.sme |
460 |
|
- enable units for php-fpm services [SME: 10335] |
461 |
|
|
462 |
|
* Tue Mar 10 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-5.sme |
463 |
|
- set sys_temp_dir for php-fpm and ibays [SME: 10888] |
464 |
|
- set restart for php-fpm services in the smeserver-php-update event [SME: 10335] |
465 |
|
|
466 |
|
* Mon Mar 09 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-3.sme |
467 |
|
- fix typos and logic in scripts [SME: 10335] |
468 |
|
- only set php admin values if php module is enabled [SME: 10871] |
469 |
|
- redirect php*-php-fpm services logs to /var/log/php/php*/php-fpm.log [SME: 10879] |
470 |
|
- pool logs in /var/log/php/*/error.log [SME: 10877] |
471 |
|
|
472 |
|
* Sat Feb 01 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-2.sme |
473 |
|
- modification for ibays php-fpm support in httpd.conf [SME: 10871] |
474 |
|
|
475 |
* Tue Jan 28 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-1.sme |
* Tue Jan 28 2020 Jean-Philipe Pialasse <tests@pialasse.com> 3.0.0-1.sme |
476 |
- initial release of smeserver-php from smeserver-php-fpm [SME: 10335] |
- initial release of smeserver-php from smeserver-php-fpm [SME: 10335] |
477 |
added support for ibays, remove references to shares (should move to smeserver-share-folders) |
added support for ibays, remove references to shares (should move to smeserver-share-folders) |