haproxy/examples/haproxy.spec
Willy Tarreau 9eeb57bd7f [RELEASE] Released version 1.5-dev8
Released version 1.5-dev8 with the following main changes :
    - MINOR: patch for minor typo (ressources/resources)
    - MEDIUM: http: add support for sending the server's name in the outgoing request
    - DOC: mention that default checks are TCP connections
    - BUG/MINOR: fix options forwardfor if-none when an alternative header name is specified
    - CLEANUP: Make check_statuses, analyze_statuses and process_chk static
    - CLEANUP: Fix HCHK spelling errors
    - BUG/MINOR: fix typo in processing of http-send-name-header
    - MEDIUM: log: Use linked lists for loggers
    - BUILD: fix declaration inside a scope block
    - REORG: log: split send_log function
    - MINOR: config: Parse the string of the log-format config keyword
    - MINOR: add ultoa, ulltoa, ltoa, lltoa implementations
    - MINOR: Date and time fonctions that don't use snprintf
    - MEDIUM: log: make http_sess_log use log_format
    - DOC: log-format documentation
    - MEDIUM: log: use log_format for mode tcplog
    - MEDIUM: log-format: backend source address %Bi %Bp
    - BUG/MINOR: log-format: fix %o flag
    - BUG/MEDIUM: bad length in log_format and __send_log
    - MINOR: logformat %st is signed
    - BUILD/MINOR: fix the source URL in the spec file
    - DOC: acl is http_first_req, not http_req_first
    - BUG/MEDIUM: don't trim last spaces from headers consisting only of spaces
    - MINOR: acl: add new matches for header/path/url length
    - BUILD: halog: make halog build on solaris
    - BUG/MINOR: don't use a wrong port when connecting to a server with mapped ports
    - MINOR: remove the client/server side distinction in SI addresses
    - MINOR: halog: add support for matching queued requests
    - DOC: indicate that cookie "prefix" and "indirect" should not be mixed
    - OPTIM/MINOR: move struct sockaddr_storage to the tail of structs
    - OPTIM/MINOR: make it possible to change pipe size (tune.pipesize)
    - BUILD/MINOR: silent a build warning in src/pipe.c (fcntl)
    - OPTIM/MINOR: move the hdr_idx pools out of the proxy struct
    - MEDIUM: tune.http.maxhdr makes it possible to configure the maximum number of HTTP headers
    - BUG/MINOR: fix a segfault when parsing a config with undeclared peers
    - CLEANUP: rename possibly confusing struct field "tracked"
    - BUG/MEDIUM: checks: fix slowstart behaviour when server tracking is in use
    - MINOR: config: tolerate server "cookie" setting in non-HTTP mode
    - MEDIUM: buffers: add some new primitives and rework existing ones
    - BUG: buffers: don't return a negative value on buffer_total_space_res()
    - MINOR: buffers: make buffer_pointer() support negative pointers too
    - CLEANUP: kill buffer_replace() and use an inline instead
    - BUG: tcp: option nolinger does not work on backends
    - CLEANUP: ebtree: remove a few annoying signedness warnings
    - CLEANUP: ebtree: clarify licence and update to 6.0.6
    - CLEANUP: ebtree: remove 4-year old harmless typo in duplicates insertion code
    - CLEANUP: ebtree: remove another typo, a wrong initialization in insertion code
    - BUG: ebtree: ebst_lookup() could return the wrong entry
    - OPTIM: stream_sock: reduce the amount of in-flight spliced data
    - OPTIM: stream_sock: save a failed recv syscall when splice returns EAGAIN
    - MINOR: acl: add support for TLS server name matching using SNI
    - BUG: http: re-enable TCP quick-ack upon incomplete HTTP requests
    - BUG: proto_tcp: don't try to bind to a foreign address if sin_family is unknown
    - MINOR: pattern: export the global temporary pattern
    - CLEANUP: patterns: get rid of pattern_data_setstring()
    - MEDIUM: acl: use temp_pattern to store fetched information in the "method" match
    - MINOR: acl: include pattern.h to make pattern migration more transparent
    - MEDIUM: pattern: change the pattern data integer from unsigned to signed
    - MEDIUM: acl: use temp_pattern to store any integer-type information
    - MEDIUM: acl: use temp_pattern to store any address-type information
    - CLEANUP: acl: integer part of acl_test is not used anymore
    - MEDIUM: acl: use temp_pattern to store any string-type information
    - CLEANUP: acl: remove last data fields from the acl_test struct
    - MEDIUM: http: replace get_ip_from_hdr2() with http_get_hdr()
    - MEDIUM: patterns: the hdr() pattern is now of type string
    - DOC: add minimal documentation on how ACLs work internally
    - DOC: add a coding-style file
    - OPTIM: halog: keep a fast path for the lines-count only
    - CLEANUP: silence a warning when building on sparc
    - BUG: http: tighten the list of allowed characters in a URI
    - MEDIUM: http: block non-ASCII characters in URIs by default
    - DOC: add some documentation from RFC3986 about URI format
    - BUG/MINOR: cli: correctly remove the whole table on "clear table"
    - BUG/MEDIUM: correctly disable servers tracking another disabled servers.
    - BUG/MEDIUM: zero-weight servers must not dequeue requests from the backend
    - MINOR: halog: add some help on the command line
    - BUILD: fix build error on FreeBSD
    - BUG: fix double free in peers config error path
    - MEDIUM: improve config check return codes
    - BUILD: make it possible to look for pcre in the default system paths
    - MINOR: config: emit a warning when 'default_backend' masks servers
    - MINOR: backend: rework the LC definition to support other connection-based algos
    - MEDIUM: backend: add the 'first' balancing algorithm
    - BUG: fix httplog trailing LF
    - MEDIUM: increase chunk-size limit to 2GB-1
    - BUG: queue: fix dequeueing sequence on HTTP keep-alive sessions
    - BUG: http: disable TCP delayed ACKs when forwarding content-length data
    - BUG: checks: fix server maintenance exit sequence
    - BUG/MINOR: stream_sock: don't remove BF_EXPECT_MORE and BF_SEND_DONTWAIT on partial writes
    - DOC: enumerate valid status codes for "observe layer7"
    - MINOR: buffer: switch a number of buffer args to const
    - CLEANUP: silence signedness warning in acl.c
    - BUG: stream_sock: si->release was not called upon shutw()
    - MINOR: log: use "%ts" to log term status only and "%tsc" to log with cookie
    - BUG/CRITICAL: log: fix risk of crash in development snapshot
    - BUG/MAJOR: possible crash when using capture headers on TCP frontends
    - MINOR: config: disable header captures in TCP mode and complain
2012-03-26 06:16:43 +02:00

274 lines
6.9 KiB
RPMSpec

Summary: HA-Proxy is a TCP/HTTP reverse proxy for high availability environments
Name: haproxy
Version: 1.5-dev8
Release: 1
License: GPL
Group: System Environment/Daemons
URL: http://haproxy.1wt.eu/
Source0: http://haproxy.1wt.eu/download/1.5/src/devel/%{name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-root
BuildRequires: pcre-devel
Requires: /sbin/chkconfig, /sbin/service
%description
HA-Proxy is a TCP/HTTP reverse proxy which is particularly suited for high
availability environments. Indeed, it can:
- route HTTP requests depending on statically assigned cookies
- spread the load among several servers while assuring server persistence
through the use of HTTP cookies
- switch to backup servers in the event a main one fails
- accept connections to special ports dedicated to service monitoring
- stop accepting connections without breaking existing ones
- add/modify/delete HTTP headers both ways
- block requests matching a particular pattern
It needs very little resource. Its event-driven architecture allows it to easily
handle thousands of simultaneous connections on hundreds of instances without
risking the system's stability.
%prep
%setup -q
# We don't want any perl dependecies in this RPM:
%define __perl_requires /bin/true
%build
%{__make} USE_PCRE=1 DEBUG="" ARCH=%{_target_cpu} TARGET=linux26
%install
[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
%{__install} -d %{buildroot}%{_sbindir}
%{__install} -d %{buildroot}%{_sysconfdir}/rc.d/init.d
%{__install} -d %{buildroot}%{_sysconfdir}/%{name}
%{__install} -d %{buildroot}%{_mandir}/man1/
%{__install} -s %{name} %{buildroot}%{_sbindir}/
%{__install} -c -m 644 examples/%{name}.cfg %{buildroot}%{_sysconfdir}/%{name}/
%{__install} -c -m 755 examples/%{name}.init %{buildroot}%{_sysconfdir}/rc.d/init.d/%{name}
%{__install} -c -m 755 doc/%{name}.1 %{buildroot}%{_mandir}/man1/
%clean
[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
%post
/sbin/chkconfig --add %{name}
%preun
if [ $1 = 0 ]; then
/sbin/service %{name} stop >/dev/null 2>&1 || :
/sbin/chkconfig --del %{name}
fi
%postun
if [ "$1" -ge "1" ]; then
/sbin/service %{name} condrestart >/dev/null 2>&1 || :
fi
%files
%defattr(-,root,root)
%doc CHANGELOG TODO examples/*.cfg doc/haproxy-en.txt doc/haproxy-fr.txt doc/architecture.txt doc/configuration.txt
%doc %{_mandir}/man1/%{name}.1*
%attr(0755,root,root) %{_sbindir}/%{name}
%dir %{_sysconfdir}/%{name}
%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/%{name}/%{name}.cfg
%attr(0755,root,root) %config %{_sysconfdir}/rc.d/init.d/%{name}
%changelog
* Mon Mar 26 2012 Willy Tarreau <w@1wt.eu>
- updated to 1.5-dev8
* Sat Sep 10 2011 Willy Tarreau <w@1wt.eu>
- updated to 1.5-dev7
* Fri Apr 8 2011 Willy Tarreau <w@1wt.eu>
- updated to 1.5-dev6
* Tue Mar 29 2011 Willy Tarreau <w@1wt.eu>
- updated to 1.5-dev5
* Sun Mar 13 2011 Willy Tarreau <w@1wt.eu>
- updated to 1.5-dev4
* Thu Nov 11 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.5-dev3
* Sat Aug 28 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.5-dev2
* Wed Aug 25 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.5-dev1
* Sun May 23 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.5-dev0
* Sun May 16 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4.6
* Thu May 13 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4.5
* Wed Apr 7 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4.4
* Tue Mar 30 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4.3
* Wed Mar 17 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4.2
* Thu Mar 4 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4.1
* Fri Feb 26 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4.0
* Tue Feb 2 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4-rc1
* Mon Jan 25 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4-dev8
* Mon Jan 25 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4-dev7
* Fri Jan 8 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4-dev6
* Sun Jan 3 2010 Willy Tarreau <w@1wt.eu>
- updated to 1.4-dev5
* Mon Oct 12 2009 Willy Tarreau <w@1wt.eu>
- updated to 1.4-dev4
* Thu Sep 24 2009 Willy Tarreau <w@1wt.eu>
- updated to 1.4-dev3
* Sun Aug 9 2009 Willy Tarreau <w@1wt.eu>
- updated to 1.4-dev2
* Wed Jul 29 2009 Willy Tarreau <w@1wt.eu>
- updated to 1.4-dev1
* Tue Jun 09 2009 Willy Tarreau <w@1wt.eu>
- updated to 1.4-dev0
* Sun May 10 2009 Willy Tarreau <w@1wt.eu>
- updated to 1.3.18
* Sun Mar 29 2009 Willy Tarreau <w@1wt.eu>
- updated to 1.3.17
* Sun Mar 22 2009 Willy Tarreau <w@1wt.eu>
- updated to 1.3.16
* Sat Apr 19 2008 Willy Tarreau <w@1wt.eu>
- updated to 1.3.15
* Wed Dec 5 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.14
* Thu Oct 18 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.13
* Sun Jun 17 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.12
* Sun Jun 3 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.11.4
* Mon May 14 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.11.3
* Mon May 14 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.11.2
* Mon May 14 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.11.1
* Mon May 14 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.11
* Thu May 10 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.10.2
* Tue May 09 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.10.1
* Tue May 08 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.10
* Sun Apr 15 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.9
* Tue Apr 03 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.8.2
* Sun Apr 01 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.8.1
* Sun Mar 25 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.8
* Wed Jan 26 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.7
* Wed Jan 22 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.6
* Wed Jan 07 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.5
* Wed Jan 02 2007 Willy Tarreau <w@1wt.eu>
- updated to 1.3.4
* Wed Oct 15 2006 Willy Tarreau <w@1wt.eu>
- updated to 1.3.3
* Wed Sep 03 2006 Willy Tarreau <w@1wt.eu>
- updated to 1.3.2
* Wed Jul 09 2006 Willy Tarreau <w@1wt.eu>
- updated to 1.3.1
* Wed May 21 2006 Willy Tarreau <willy@w.ods.org>
- updated to 1.2.14
* Wed May 01 2006 Willy Tarreau <willy@w.ods.org>
- updated to 1.2.13
* Wed Apr 15 2006 Willy Tarreau <willy@w.ods.org>
- updated to 1.2.12
* Wed Mar 30 2006 Willy Tarreau <willy@w.ods.org>
- updated to 1.2.11.1
* Wed Mar 19 2006 Willy Tarreau <willy@w.ods.org>
- updated to 1.2.10
* Wed Mar 15 2006 Willy Tarreau <willy@w.ods.org>
- updated to 1.2.9
* Sat Jan 22 2005 Willy Tarreau <willy@w.ods.org>
- updated to 1.2.3 (1.1.30)
* Sun Nov 14 2004 Willy Tarreau <w@w.ods.org>
- updated to 1.1.29
- fixed path to config and init files
- statically linked PCRE to increase portability to non-pcre systems
* Sun Jun 6 2004 Willy Tarreau <willy@w.ods.org>
- updated to 1.1.28
- added config check support to the init script
* Tue Oct 28 2003 Simon Matter <simon.matter@invoca.ch>
- updated to 1.1.27
- added pid support to the init script
* Wed Oct 22 2003 Simon Matter <simon.matter@invoca.ch>
- updated to 1.1.26
* Thu Oct 16 2003 Simon Matter <simon.matter@invoca.ch>
- initial build