df2db60
%{!?_httpd_apxs:       %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}}
df2db60
%{!?_httpd_mmn:        %{expand: %%global _httpd_mmn %%(cat %{_includedir}/httpd/.mmn 2>/dev/null || echo 0-0)}}
df2db60
%{!?_httpd_confdir:    %{expand: %%global _httpd_confdir %%{_sysconfdir}/httpd/conf.d}}
f80f0aa
# /etc/httpd/conf.d with httpd < 2.4 and defined as /etc/httpd/conf.modules.d with httpd >= 2.4
f80f0aa
%{!?_httpd_modconfdir: %{expand: %%global _httpd_modconfdir %%{_sysconfdir}/httpd/conf.d}}
df2db60
%{!?_httpd_moddir:     %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}}
karm bea8be0
karm bea8be0
%global namedreltag .Final
karm bea8be0
%global namedversion %{version}%{?namedreltag}
karm bea8be0
feb09db
Name:          mod_cluster
3f4379e
Version:       1.3.20
3f4379e
Release:       1%{?dist}
karm bea8be0
Summary:       Apache HTTP Server dynamic load balancer with Wildfly and Tomcat libraries
karm bea8be0
License:       LGPLv3
karm bea8be0
URL:           http://modcluster.io/
karm bea8be0
Source0:       https://github.com/modcluster/mod_cluster/archive/%{namedversion}/mod_cluster-%{namedversion}.tar.gz
karm bea8be0
Source1:       mod_cluster.conf
karm bea8be0
Source2:       README.fedora
karm bea8be0
3f4379e
Requires:      httpd >= 2.4.49
karm bea8be0
Requires:      httpd-mmn = %{_httpd_mmn}
karm bea8be0
feb09db
# Eventually this package will be renamed to mod_proxy_cluster
feb09db
#Obsoletes:     mod_cluster <= 1.3.3-14
karm bea8be0
3f4379e
BuildRequires: httpd-devel >= 2.4.49
karm bea8be0
BuildRequires: autoconf
karm bea8be0
BuildRequires: make
karm bea8be0
BuildRequires: gcc
karm bea8be0
karm bea8be0
%description
karm bea8be0
Mod_cluster is an httpd-based load balancer. Like mod_jk and mod_proxy,
karm bea8be0
mod_cluster uses a communication channel to forward requests from httpd to one
karm bea8be0
of a set of application server nodes. Unlike mod_jk and mod_proxy, mod_cluster
karm bea8be0
leverages an additional connection between the application server nodes and
karm bea8be0
httpd. The application server nodes use this connection to transmit server-side
karm bea8be0
load balance factors and lifecycle events back to httpd via a custom set of
karm bea8be0
HTTP methods, affectionately called the Mod-Cluster Management Protocol (MCMP).
karm bea8be0
This additional feedback channel allows mod_cluster to offer a level of
karm bea8be0
intelligence and granularity not found in other load balancing solutions.
karm bea8be0
karm bea8be0
%prep
karm bea8be0
%setup -q -n mod_cluster-%{namedversion}
karm bea8be0
karm bea8be0
%build
karm bea8be0
karm bea8be0
CFLAGS="$RPM_OPT_FLAGS"
karm bea8be0
export CFLAGS
karm bea8be0
karm bea8be0
module_dirs=( advertise mod_manager mod_proxy_cluster mod_cluster_slotmem )
karm bea8be0
karm bea8be0
for dir in ${module_dirs[@]} ; do
karm bea8be0
    pushd native/${dir}
karm bea8be0
        sh buildconf
karm bea8be0
        %configure --libdir=%{_libdir} --with-apxs=%{_httpd_apxs}
karm bea8be0
        make %{?_smp_mflags}
karm bea8be0
    popd
karm bea8be0
done
karm bea8be0
karm bea8be0
%install
karm bea8be0
install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/httpd/modules
karm bea8be0
install -d -m 755 $RPM_BUILD_ROOT%{_httpd_confdir}
karm bea8be0
karm bea8be0
module_dirs=( advertise mod_manager mod_proxy_cluster mod_cluster_slotmem )
karm bea8be0
for dir in ${module_dirs[@]} ; do
karm bea8be0
    pushd native/${dir}
karm bea8be0
        cp ./*.so $RPM_BUILD_ROOT%{_libdir}/httpd/modules
karm bea8be0
    popd
karm bea8be0
done
karm bea8be0
karm bea8be0
cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_httpd_confdir}/
karm bea8be0
karm bea8be0
install -pm 0644 %{SOURCE2} README
karm bea8be0
karm bea8be0
%files
karm bea8be0
%doc README
karm bea8be0
%license lgpl.txt
karm bea8be0
%{_libdir}/httpd/modules/mod_advertise.so
karm bea8be0
%{_libdir}/httpd/modules/mod_manager.so
karm bea8be0
%{_libdir}/httpd/modules/mod_proxy_cluster.so
karm bea8be0
%{_libdir}/httpd/modules/mod_cluster_slotmem.so
karm bea8be0
%config(noreplace) %{_sysconfdir}/httpd/conf.d/*.conf
karm bea8be0
karm bea8be0
%changelog
3f4379e
* Thu Feb 29 2024 Vladimir Chlup <vchlup@redhat.com> - 1.3.20-1
3f4379e
- Upstream release 1.3.20.Final
3f4379e
958bd9f
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.16-8
958bd9f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
958bd9f
e7b394e
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.16-7
e7b394e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
e7b394e
9b0be08
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.16-6
9b0be08
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
9b0be08
c6cd6cc
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.16-5
c6cd6cc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
c6cd6cc
ea0dda5
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.16-4
ea0dda5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
ea0dda5
ac1babb
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.16-3
ac1babb
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
ac1babb
3951e5b
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.16-2
3951e5b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
3951e5b
George Zaronikas 4df6bfc
* Thu Jul 01 2021 George Zaronikas <gzaronik@redhat.com> - 1.3.16-1
George Zaronikas 4df6bfc
- Bump to upstream release 1.3.16.Final
George Zaronikas 4df6bfc
d4e3569
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.14-3
d4e3569
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
d4e3569
5934840
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.14-2
5934840
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
5934840
Dimitris Sartzetakis a1ca7ee
* Wed May 06 2020 Dimitris Sartzetakis <dsartzet@redhat.com> - 1.3.14-1
Dimitris Sartzetakis a1ca7ee
- Upstream release 1.3.14.Final
Dimitris Sartzetakis a1ca7ee
c141b2a
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.12-2
c141b2a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
c141b2a
1efad47
* Thu Sep 05 2019 Hui Wang <huwang@redhat.com> - 1.3.12-1
1efad47
- Upstream release 1.3.12.Final
1efad47
4045b23
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.11-2
4045b23
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
4045b23
karm bea8be0
* Thu May 09 2019 Michal Karm Babacek <karm@fedoraproject.org> 1.3.11-1
karm bea8be0
- Updates comments about Selinux in mod_cluster.conf
karm bea8be0
- Removes Java libs for Tomcat 8 and Wildfly 10, to be reintroduced for Tomcat 9 in a separate package
karm bea8be0
- Fix for MODCLUSTER-690
karm bea8be0
- Back port upstream warning fixes
karm bea8be0
- Fix for MODCLUSTER-543
karm bea8be0
- Fix forMODCLUSTER-684
karm bea8be0
- Fix 503 found while investigating MODCLUSTER-684
karm bea8be0
- Fix for JBCS-634 decrease loops per vhosts for balancer changes
karm bea8be0
- Fix for MODCLUSTER-622 segfault in process_info
karm bea8be0
- Fix for MODCLUSTER-582 and clean some C++ comments
karm bea8be0
- Fix for MODCLUSTER-590 - workers array for Deterministic failover is now allocated dynamically
karm bea8be0
- Fix for MODCLUSTER-526 We don't use helper->shared if it's already NULL
karm bea8be0
- Fix for MODCLUSTER-550 Failover targets should be chosen deterministically
karm bea8be0
- Fix for MODCLUSTER-547
karm bea8be0
- Fix CVE-2016-8612 JBCS-193
karm bea8be0
- Fix for MODCLUSTER-522
karm bea8be0
- Fix for MODCLUSTER-534 update to MODCLUSTER-435 normalizing balancer name
karm bea8be0
- Security enhancements for protocol parser
karm bea8be0
karm bea8be0
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.3-14
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
karm bea8be0
karm bea8be0
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.3-13
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
karm bea8be0
karm bea8be0
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.3-12
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
karm bea8be0
karm bea8be0
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.3-11
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
karm bea8be0
karm bea8be0
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.3-10
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
karm bea8be0
karm bea8be0
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.3-9
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
karm bea8be0
karm bea8be0
* Tue Sep 06 2016 Michal Karm Babacek <karm@fedoraproject.org> 1.3.3-8
karm bea8be0
- mod_cluster.conf and README file updates about Firewalld and Selinux
karm bea8be0
karm bea8be0
* Mon Sep 05 2016 Michal Karm Babacek <karm@fedoraproject.org> 1.3.3-7
karm bea8be0
- adjusted release number, build for f25
karm bea8be0
f80f0aa
* Tue Aug 30 2016 gil cattaneo <puntogil@libero.it> 1.3.3-5
karm bea8be0
- remove useless pom macros
karm bea8be0
- add subpackages for parent POMs
karm bea8be0
- use custom _httpd_confdir macro
karm bea8be0
karm bea8be0
* Mon Aug 29 2016 gil cattaneo <puntogil@libero.it> 1.3.3-4
karm bea8be0
- fix BR list
karm bea8be0
- marked as noarch only the java stuff
karm bea8be0
karm bea8be0
* Mon Aug 29 2016 Michal Karm Babacek  <karm@fedoraproject.org> 1.3.3-3
karm bea8be0
- Added mvn(..) BuildRequires for Tomcat libs instead of direct dependency on tomcat package
karm bea8be0
karm bea8be0
* Mon Aug 29 2016 gil cattaneo <puntogil@libero.it> 1.3.3-2
karm bea8be0
- fix pom macros
karm bea8be0
karm bea8be0
* Mon Aug 29 2016 Michal Karm Babacek  <karm@fedoraproject.org> - 1.3.3-1
karm bea8be0
- Upstream release 1.3.3.Final
karm bea8be0
- Refactored spec file
karm bea8be0
karm bea8be0
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.6-7
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
karm bea8be0
karm bea8be0
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.6-6
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
karm bea8be0
karm bea8be0
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.6-5
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
karm bea8be0
karm bea8be0
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.6-4
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
karm bea8be0
karm bea8be0
* Thu Jan 23 2014 Joe Orton <jorton@redhat.com> - 1.2.6-3
karm bea8be0
- fix _httpd_mmn expansion in absence of httpd-devel
karm bea8be0
karm bea8be0
* Fri Jan 17 2014 Marek Goldmann <mgoldman@redhat.com> - 1.2.6-2
karm bea8be0
- Add support for conditional build that builds only HTTPD module
karm bea8be0
karm bea8be0
* Wed Sep 25 2013 Marek Goldmann <mgoldman@redhat.com> - 1.2.6-1
karm bea8be0
- Upstream release 1.2.6.Final
karm bea8be0
- Support for Apache 2.4 in mod_cluster.conf
karm bea8be0
karm bea8be0
* Mon Aug 05 2013 Marek Goldmann <mgoldman@redhat.com> - 1.2.4-1
karm bea8be0
- Upstream release 1.2.4.Final
karm bea8be0
karm bea8be0
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.1-6
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
karm bea8be0
karm bea8be0
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.1-5
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
karm bea8be0
karm bea8be0
* Wed Feb 06 2013 Java SIG <java-devel@lists.fedoraproject.org> - 1.2.1-4
karm bea8be0
- Update for https://fedoraproject.org/wiki/Fedora_19_Maven_Rebuild
karm bea8be0
- Replace maven BuildRequires with maven-local
karm bea8be0
karm bea8be0
* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.1-3
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
karm bea8be0
karm bea8be0
* Tue Jun 05 2012 Marek Goldmann <mgoldman@redhat.com> - 1.2.1-2
karm bea8be0
- Added missing container.pom
karm bea8be0
karm bea8be0
* Mon May 07 2012 Marek Goldmann <mgoldman@redhat.com> - 1.2.1-1
karm bea8be0
- Upstream release 1.2.1.Final
karm bea8be0
- Port to httpd 2.4, RHBZ#813871
karm bea8be0
karm bea8be0
* Wed Mar 28 2012 Marek Goldmann <mgoldman@redhat.com> - 1.2.0-1
karm bea8be0
- Upstream release 1.2.0.Final
karm bea8be0
- Add java subpackage with AS7 required jars
karm bea8be0
karm bea8be0
* Tue Mar 27 2012 Marek Goldmann <mgoldman@redhat.com> - 1.1.1-4
karm bea8be0
- Require httpd-mmn RHBZ#803068
karm bea8be0
karm bea8be0
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.1-3
karm bea8be0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
karm bea8be0
karm bea8be0
* Fri Mar 11 2011 Marek Goldmann <mgoldman@redhat.com> - 1.1.1-2
karm bea8be0
- Another round of cleanup in spec file
karm bea8be0
- Patch that disables compilation-time warnings
karm bea8be0
karm bea8be0
* Thu Mar 10 2011 Marek Goldmann <mgoldman@redhat.com> - 1.1.1-1
karm bea8be0
- Upstream release 1.1.1
karm bea8be0
- Cleanup in spec file
karm bea8be0
karm bea8be0
* Fri Nov 12 2010 Marek Goldmann <mgoldman@redhat.com> - 1.1.0-1
karm bea8be0
- Initial release
karm bea8be0