Projects
Eulaceura:Factory
tengine
_service:obs_scm:tengine.spec
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:obs_scm:tengine.spec of Package tengine
%define software tengine %define nginx_user nobody %define nginx_group nobody %define nginx_home /usr/local/nginx %define nginx_home_tmp /usr/local/nginx/tmp %define mywebroot /usr/share/nginx/html/ %global debug_package %{nil} Name: %{software} Version: 2.3.3 Release: 1 URL: http://tengine.taobao.org/ Summary: A distribution of Nginx with some advanced features License: GPL-2.0-or-later GPL-2.0-only Group: System Environment/Daemons Source0: https://github.com/alibaba/tengine/archive/refs/tags/2.3.3.tar.gz BuildRequires: zlib-devel BuildRequires: openssl-devel BuildRequires: pcre-devel BuildRequires: libxslt-devel BuildRequires: perl BuildRequires: gd-devel Requires: initscripts >= 8.36 Requires(pre): shadow-utils Requires(post): chkconfig Requires: libxslt Requires: gd-devel Provides: webserver %description Tengine is a web server originated by Taobao, the largest e-commerce website in Asia. It is based on Nginx HTTP server and has many advanced features. Tengine has been proven very stable and efficient on the top 100 global websites, including taobao.com and tmall.com. Tengine has been an open source project since December 2011. It is now developed and maintained by the Tengine team, whose core members are from Taobao, Sogou and other Internet companies. %prep %setup -q -n %{software}-%{version} %build ./configure \ --prefix=%{nginx_home} \ --conf-path=%{nginx_home}/conf/nginx.conf \ --user=%{nginx_user} \ --group=%{nginx_group} \ --http-client-body-temp-path=%{nginx_home_tmp}/client_body \ --http-proxy-temp-path=%{nginx_home_tmp}/proxy \ --http-fastcgi-temp-path=%{nginx_home_tmp}/fastcgi \ --with-cc-opt="%{optflags} $(pcre-config --cflags)" \ --with-http_ssl_module \ --with-http_realip_module \ --with-http_gzip_static_module \ --with-http_stub_status_module \ --with-http_addition_module \ --with-http_image_filter_module \ --with-http_sub_module \ --with-http_flv_module \ --with-http_slice_module \ --with-http_mp4_module \ --with-http_random_index_module \ --with-http_secure_link_module \ --with-http_xslt_module \ $* make %{?_smp_mflags} %install # remove default stripping %define __spec_install_port /usr/lib/rpm/brp-compress %{__rm} -rf $RPM_BUILD_ROOT %{__make} DESTDIR=$RPM_BUILD_ROOT install %{__mkdir} -p $RPM_BUILD_ROOT%{nginx_home}/var %{__mkdir} -p $RPM_BUILD_ROOT%{nginx_home_tmp} %{__rm} -f $RPM_BUILD_ROOT%{nginx_home}/conf/*.default %{__rm} -f $RPM_BUILD_ROOT%{nginx_home}/conf/fastcgi.conf %{__rm} -f $RPM_BUILD_ROOT%{nginx_home}/conf/scgi_params %{__rm} -f $RPM_BUILD_ROOT%{nginx_home}/conf/uwsgi_params # install SYSV init stuff %{__mkdir} -p $RPM_BUILD_ROOT%{_initrddir} %{__cat} > $RPM_BUILD_ROOT%{_initrddir}/nginx <<EOF #!/bin/sh # # nginx Startup script for nginx # # chkconfig: - 85 15 # processname: nginx # description: nginx is a HTTP and reverse proxy server # ### BEGIN INIT INFO # Provides: nginx # Required-Start: $local_fs $remote_fs $network # Required-Stop: $local_fs $remote_fs $network # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: start and stop nginx ### END INIT INFO # Source function library. . /etc/rc.d/init.d/functions # Check that networking is up. . /etc/sysconfig/network if [ "$NETWORKING" = "no" ] then exit 0 fi if [ -f /etc/sysconfig/tengine ]; then . /etc/sysconfig/tengine fi prog=nginx nginx=${NGINX-/usr/local/nginx/sbin/nginx} conffile=${CONFFILE-/usr/local/nginx/conf/nginx.conf} lockfile=${LOCKFILE-/usr/local/nginx/var/nginx.lock} pidfile=${PIDFILE-/usr/local/nginx/var/nginx.pid} RETVAL=0 start() { echo -n $"Starting $prog: " daemon --pidfile=${pidfile} ${nginx} -c ${conffile} RETVAL=$? echo [ $RETVAL = 0 ] && touch ${lockfile} return $RETVAL } stop() { echo -n $"Stopping $prog: " killproc -p ${pidfile} ${prog} RETVAL=$? echo [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile} } reload() { echo -n $"Reloading $prog: " killproc -p ${pidfile} ${prog} -HUP RETVAL=$? echo } upgrade() { oldbinpidfile=${pidfile}.oldbin configtest || return 6 echo -n $"Staring new master $prog: " killproc -p ${pidfile} ${prog} -USR2 RETVAL=$? echo sleep 1 if [ -f ${oldbinpidfile} -a -f ${pidfile} ]; then echo -n $"Graceful shutdown of old $prog: " killproc -p ${oldbinpidfile} ${prog} -QUIT RETVAL=$? echo else echo $"Upgrade failed!" return 1 fi } configtest() { ${nginx} -t -c ${conffile} RETVAL=$? return $RETVAL } # See how we were called. case "$1" in start) start ;; stop) stop ;; status) status -p ${pidfile} ${nginx} RETVAL=$? ;; restart) stop start ;; upgrade) upgrade ;; condrestart|try-restart) if status -p ${pidfile} ${nginx} >&/dev/null; then stop start fi ;; force-reload|reload) reload ;; configtest) configtest ;; *) echo $"Usage: $prog {start|stop|restart|condrestart|try-restart|force-reload|upgrade|reload|status|help|configtest}" RETVAL=2 esac exit $RETVAL EOF %{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig %{__cat} > $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name} <<EOF NGINX=%{nginx_home}/sbin/nginx CONFFILE=%{nginx_home}/conf/nginx.conf LOCKFILE=%{nginx_home}/var/nginx.lock PIDFILE=%{nginx_home}/var/nginx.pid EOF %{__strip} $RPM_BUILD_ROOT%{nginx_home}/sbin/nginx # install default html %{__mkdir} -p $RPM_BUILD_ROOT%{mywebroot} %{__mv} $RPM_BUILD_ROOT%{nginx_home}/html/*.html $RPM_BUILD_ROOT/%{mywebroot} %files %defattr(-,root,root) %{nginx_home}/sbin/nginx %{_initrddir}/nginx %dir %{nginx_home}/conf #%config(noreplace) %{nginx_home}/conf/browsers #%config(noreplace) %{nginx_home}/conf/module_stubs %config(noreplace) %{nginx_home}/conf/nginx.conf %config(noreplace) %{nginx_home}/conf/mime.types %config(noreplace) %{nginx_home}/conf/fastcgi_params %config(noreplace) %{nginx_home}/conf/koi-utf %config(noreplace) %{nginx_home}/conf/koi-win %config(noreplace) %{nginx_home}/conf/win-utf %config(noreplace) %{_sysconfdir}/sysconfig/%{name} %attr(0755,root,root) %dir %{nginx_home}/var %{mywebroot} %attr(0755,root,root) %dir %{mywebroot} %attr(-,%{nginx_user},%{nginx_group}) %dir %{nginx_home_tmp} #%{nginx_home}/modules %{nginx_home}/logs %pre # Add the "web" user getent group %{nginx_group} >/dev/null || groupadd -r %{nginx_group} getent passwd %{nginx_user} >/dev/null || \ useradd -r -g %{nginx_group} -s /sbin/nologin \ -d %{nginx_home} -c "web user" %{nginx_user} exit 0 %post # Register the nginx service if [ $1 -eq 1 ]; then /sbin/chkconfig --add nginx fi %preun if [ $1 -eq 0 ]; then /sbin/service nginx stop > /dev/null 2>&1 /sbin/chkconfig --del nginx fi %postun if [ $1 -ge 1 ]; then /sbin/service nginx upgrade &>/dev/null || : fi %changelog * Wed Dec 1 2021 bzhaoop <bzhaojyathousandy@gmail.com> - 2.3.3-1 - initial package
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2