Introduced rpm packages building tools.
This commit is contained in:
@@ -5,7 +5,7 @@ UNIT= unit-$(VER)
|
|||||||
DEST= ../build
|
DEST= ../build
|
||||||
XSLS?= xslscript.pl
|
XSLS?= xslscript.pl
|
||||||
|
|
||||||
PACKAGES= unit
|
PACKAGES= unit unit-php unit-python unit-go
|
||||||
|
|
||||||
all: changes changelogs
|
all: changes changelogs
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,45 @@
|
|||||||
<change_log title="unit">
|
<change_log title="unit">
|
||||||
|
|
||||||
|
|
||||||
|
<changes apply="unit-go" ver="0.2" rev="1"
|
||||||
|
date="2017-10-19" time="18:00:00 +0300"
|
||||||
|
packager="Andrei Belov <defan@nginx.com>">
|
||||||
|
|
||||||
|
<change>
|
||||||
|
<para>
|
||||||
|
Initial release of Go module for NGINX Unit.
|
||||||
|
</para>
|
||||||
|
</change>
|
||||||
|
|
||||||
|
</changes>
|
||||||
|
|
||||||
|
|
||||||
|
<changes apply="unit-python" ver="0.2" rev="1"
|
||||||
|
date="2017-10-19" time="18:00:00 +0300"
|
||||||
|
packager="Andrei Belov <defan@nginx.com>">
|
||||||
|
|
||||||
|
<change>
|
||||||
|
<para>
|
||||||
|
Initial release of Python module for NGINX Unit.
|
||||||
|
</para>
|
||||||
|
</change>
|
||||||
|
|
||||||
|
</changes>
|
||||||
|
|
||||||
|
|
||||||
|
<changes apply="unit-php" ver="0.2" rev="1"
|
||||||
|
date="2017-10-19" time="18:00:00 +0300"
|
||||||
|
packager="Andrei Belov <defan@nginx.com>">
|
||||||
|
|
||||||
|
<change>
|
||||||
|
<para>
|
||||||
|
Initial release of PHP module for NGINX Unit.
|
||||||
|
</para>
|
||||||
|
</change>
|
||||||
|
|
||||||
|
</changes>
|
||||||
|
|
||||||
|
|
||||||
<changes apply="unit" ver="0.2" rev="1"
|
<changes apply="unit" ver="0.2" rev="1"
|
||||||
date="2017-10-19" time="18:00:00 +0300"
|
date="2017-10-19" time="18:00:00 +0300"
|
||||||
packager="Andrei Belov <defan@nginx.com>">
|
packager="Andrei Belov <defan@nginx.com>">
|
||||||
|
|||||||
17
pkg/Makefile
Normal file
17
pkg/Makefile
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/usr/bin/make
|
||||||
|
|
||||||
|
VERSION ?= $(shell grep 'define NXT_VERSION' ../src/nxt_main.h \
|
||||||
|
| sed -e 's/^.*"\(.*\)".*/\1/')
|
||||||
|
|
||||||
|
RELEASE ?= 1
|
||||||
|
|
||||||
|
default:
|
||||||
|
@echo "available targets: rpm"
|
||||||
|
|
||||||
|
rpm:
|
||||||
|
@cd rpm && VERSION=$(VERSION) RELEASE=$(RELEASE) make all
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@cd rpm && make clean
|
||||||
|
|
||||||
|
.PHONY: default rpm clean
|
||||||
137
pkg/rpm/Makefile
Normal file
137
pkg/rpm/Makefile
Normal file
@@ -0,0 +1,137 @@
|
|||||||
|
#!/usr/bin/make
|
||||||
|
|
||||||
|
DEFAULT_VERSION := $(shell grep 'define NXT_VERSION' ../../src/nxt_main.h \
|
||||||
|
| sed -e 's/^.*"\(.*\)".*/\1/')
|
||||||
|
|
||||||
|
DEFAULT_RELEASE := 1
|
||||||
|
|
||||||
|
VERSION ?= $(DEFAULT_VERSION)
|
||||||
|
RELEASE ?= $(DEFAULT_RELEASE)
|
||||||
|
|
||||||
|
BUILD_DEPENDS = libxml2 libxslt rpm-build rpmlint
|
||||||
|
|
||||||
|
MODULES=
|
||||||
|
-include Makefile.*
|
||||||
|
|
||||||
|
CONFIGURE_ARGS=\
|
||||||
|
--prefix=/usr \
|
||||||
|
--state=%{_sharedstatedir}/unit \
|
||||||
|
--control="unix:/var/run/control.unit.sock" \
|
||||||
|
--pid=/var/run/unit.pid \
|
||||||
|
--log=/var/log/unit.log \
|
||||||
|
--tests
|
||||||
|
|
||||||
|
export CR=\\n
|
||||||
|
|
||||||
|
default:
|
||||||
|
@echo "valid targets: all modules unit $(addprefix unit-, $(MODULES)) rpmlint specs clean"
|
||||||
|
|
||||||
|
all: check-build-depends unit modules
|
||||||
|
|
||||||
|
modules: $(addprefix unit-, $(MODULES))
|
||||||
|
|
||||||
|
specs: $(addsuffix .spec, $(addprefix rpmbuild/SPECS/unit-, $(MODULES)))
|
||||||
|
|
||||||
|
check-build-depends:
|
||||||
|
@{ \
|
||||||
|
not_installed= ; \
|
||||||
|
for pkg in $(BUILD_DEPENDS); do \
|
||||||
|
rpm -qi $${pkg} >/dev/null 2>&1 ; \
|
||||||
|
if [ $$? -ne 0 ]; then \
|
||||||
|
not_installed="$${not_installed} $${pkg}" ; \
|
||||||
|
fi ; \
|
||||||
|
done ; \
|
||||||
|
if test -n "$${not_installed}" ; then \
|
||||||
|
echo "" >&2 ; \
|
||||||
|
echo "The following packages are required in order to proceed:" >&2 ; \
|
||||||
|
echo "" >&2 ; \
|
||||||
|
echo $${not_installed} >&2 ; \
|
||||||
|
echo "" >&2 ; \
|
||||||
|
exit 1 ; \
|
||||||
|
fi \
|
||||||
|
}
|
||||||
|
|
||||||
|
rpmbuild/SPECS:
|
||||||
|
mkdir -p rpmbuild/SPECS
|
||||||
|
|
||||||
|
rpmbuild/SPECS/unit.spec: unit.spec.in ../../docs/changes.xml | rpmbuild/SPECS
|
||||||
|
cat unit.spec.in | \
|
||||||
|
sed -e "s#%%VERSION%%#$(VERSION)#g" \
|
||||||
|
-e "s#%%RELEASE%%#$(RELEASE)#g" \
|
||||||
|
-e "s#%%CONFIGURE_ARGS%%#$(CONFIGURE_ARGS)#g" \
|
||||||
|
> rpmbuild/SPECS/unit.spec
|
||||||
|
cd ../../docs && make ../build/unit.rpm-changelog
|
||||||
|
ifneq ($(DEFAULT_VERSION)$(DEFAULT_RELEASE), $(VERSION)$(RELEASE))
|
||||||
|
cat ../../build/unit.rpm-changelog | sed -e \
|
||||||
|
"s/> - $(DEFAULT_VERSION)-$(DEFAULT_RELEASE)/> - $(VERSION)-$(RELEASE)/" \
|
||||||
|
>> rpmbuild/SPECS/unit.spec
|
||||||
|
else
|
||||||
|
cat ../../build/unit.rpm-changelog >> rpmbuild/SPECS/unit.spec
|
||||||
|
endif
|
||||||
|
|
||||||
|
rpmbuild/SOURCES/unit-$(VERSION).tar.gz:
|
||||||
|
cd ../.. && tar -czf pkg/rpm/rpmbuild/SOURCES/unit-$(VERSION).tar.gz \
|
||||||
|
--transform "s#^#unit-$(VERSION)/#" \
|
||||||
|
LICENSE NOTICE CHANGES README configure auto src test
|
||||||
|
|
||||||
|
unit: rpmbuild/SPECS/unit.spec rpmbuild/SOURCES/unit-$(VERSION).tar.gz
|
||||||
|
@echo "===> Building $@ package" ; \
|
||||||
|
rpmbuild -D "_topdir `pwd`/rpmbuild" -ba rpmbuild/SPECS/unit.spec && \
|
||||||
|
ln -s rpmbuild/BUILD/$@-$(VERSION)/build $@
|
||||||
|
|
||||||
|
rpmlint:
|
||||||
|
find rpmbuild/ -name "*.rpm" -print -exec rpmlint {} \;
|
||||||
|
|
||||||
|
rpmbuild/SPECS/unit-%.spec: unit.module.spec.in ../../docs/changes.xml | rpmbuild/SPECS
|
||||||
|
@echo "===> Creating $@"
|
||||||
|
@{ \
|
||||||
|
set -e ; \
|
||||||
|
i=100 ; \
|
||||||
|
sources= ; \
|
||||||
|
for src in $(MODULE_SOURCES_$*); do \
|
||||||
|
s="`printf "Source%d: %s\n" $${i} $${src}`" ; \
|
||||||
|
sources="$${sources}\n$${s}" ; \
|
||||||
|
i=$$(($${i}+1)) ; \
|
||||||
|
done ; \
|
||||||
|
pkgname=$(shell echo $@ | cut -d '/' -f 3 | cut -d '.' -f 1) ; \
|
||||||
|
definitions=`echo "$$MODULE_DEFINITIONS_$*" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
|
||||||
|
preinstall=`echo "$$MODULE_PREINSTALL_$*" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
|
||||||
|
files=`echo "$$MODULE_FILES_$*" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
|
||||||
|
post=`echo "$$MODULE_POST_$*" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
|
||||||
|
cat unit.module.spec.in | sed \
|
||||||
|
-e "s#%%NAME%%#$${pkgname}#g" \
|
||||||
|
-e "s#%%SUMMARY%%#$(MODULE_SUMMARY_$*)#g" \
|
||||||
|
-e "s#%%VERSION%%#$(MODULE_VERSION_$*)#g" \
|
||||||
|
-e "s#%%RELEASE%%#$(MODULE_RELEASE_$*)#g" \
|
||||||
|
-e "s#%%UNIT_VERSION%%#$(VERSION)#g" \
|
||||||
|
-e "s#%%UNIT_RELEASE%%#$(RELEASE)#g" \
|
||||||
|
-e "s#%%MODULE_SOURCES%%#$${sources}#g" \
|
||||||
|
-e "s#%%CONFIGURE_ARGS%%#$(CONFIGURE_ARGS)#g" \
|
||||||
|
-e "s#%%MODULE_CONFARGS%%#$(MODULE_CONFARGS_$*)#g" \
|
||||||
|
-e "s#%%MODULE_MAKEARGS%%#$(MODULE_MAKEARGS_$*)#g" \
|
||||||
|
-e "s#%%MODULE_INSTARGS%%#$(MODULE_INSTARGS_$*)#g" \
|
||||||
|
-e "s#%%MODULE_DEFINITIONS%%#$${definitions}#g" \
|
||||||
|
-e "s#%%MODULE_PREINSTALL%%#$${preinstall}#g" \
|
||||||
|
-e "s#%%MODULE_FILES%%#$${files}#g" \
|
||||||
|
-e "s#%%MODULE_POST%%#$${post}#g" \
|
||||||
|
> $@.tmp ; \
|
||||||
|
}
|
||||||
|
cd ../../docs && make ../build/unit-$*.rpm-changelog
|
||||||
|
cat ../../build/unit-$*.rpm-changelog | sed -e \
|
||||||
|
"s/> - $(DEFAULT_VERSION)-$(DEFAULT_RELEASE)/> - $(MODULE_VERSION_$*)-$(MODULE_RELEASE_$*)/" \
|
||||||
|
>> $@.tmp
|
||||||
|
mv $@.tmp $@
|
||||||
|
|
||||||
|
unit-%: rpmbuild/SPECS/unit-%.spec rpmbuild/SOURCES/unit-$(VERSION).tar.gz
|
||||||
|
@echo "===> Building $@ package" ; \
|
||||||
|
rpmbuild -D "_topdir `pwd`/rpmbuild" -ba rpmbuild/SPECS/$@.spec && \
|
||||||
|
ln -s rpmbuild/BUILD/$@-$(VERSION)/build $@
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf rpmbuild/SPECS rpmbuild/BUILD rpmbuild/BUILDROOT rpmbuild/RPMS rpmbuild/SRPMS ../../build
|
||||||
|
rm -f rpmbuild/SOURCES/unit-*.tar.gz unit
|
||||||
|
find . -maxdepth 1 -type l -delete
|
||||||
|
|
||||||
|
.PHONY: default all modules specs check-build-depends rpmlint clean
|
||||||
|
|
||||||
|
.SECONDARY:
|
||||||
63
pkg/rpm/Makefile.go
Normal file
63
pkg/rpm/Makefile.go
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
MODULES+= go
|
||||||
|
|
||||||
|
MODULE_SUMMARY_go= Go module for NGINX Unit
|
||||||
|
|
||||||
|
MODULE_VERSION_go= $(VERSION)
|
||||||
|
MODULE_RELEASE_go= 1
|
||||||
|
|
||||||
|
MODULE_CONFARGS_go= go --go-path=%{goroot}
|
||||||
|
MODULE_MAKEARGS_go= go
|
||||||
|
MODULE_INSTARGS_go= go-install
|
||||||
|
|
||||||
|
MODULE_SOURCES_go= unit.example-go-app \
|
||||||
|
unit.example-go-config
|
||||||
|
|
||||||
|
BUILD_DEPENDS+= golang
|
||||||
|
|
||||||
|
define MODULE_DEFINITIONS_go
|
||||||
|
%define goroot %(go env GOROOT)
|
||||||
|
%define goos %(go env GOOS)
|
||||||
|
%define goarch %(go env GOARCH)
|
||||||
|
|
||||||
|
BuildRequires: golang
|
||||||
|
endef
|
||||||
|
export MODULE_DEFINITIONS_go
|
||||||
|
|
||||||
|
define MODULE_PREINSTALL_go
|
||||||
|
QA_SKIP_BUILD_ROOT=1
|
||||||
|
export QA_SKIP_BUILD_ROOT
|
||||||
|
|
||||||
|
%{__mkdir} -p %{buildroot}%{_datadir}/doc/unit-go/examples/go-app
|
||||||
|
%{__install} -m 644 -p %{SOURCE100} \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit-go/examples/go-app/let-my-people.go
|
||||||
|
%{__install} -m 644 -p %{SOURCE101} \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit-go/examples/unit.config
|
||||||
|
endef
|
||||||
|
export MODULE_PREINSTALL_go
|
||||||
|
|
||||||
|
define MODULE_FILES_go
|
||||||
|
%dir %{goroot}/src/unit
|
||||||
|
%{goroot}/src/unit/*
|
||||||
|
%{goroot}/pkg/%{goos}_%{goarch}/unit.a
|
||||||
|
endef
|
||||||
|
export MODULE_FILES_go
|
||||||
|
|
||||||
|
define MODULE_POST_go
|
||||||
|
cat <<BANNER
|
||||||
|
----------------------------------------------------------------------
|
||||||
|
|
||||||
|
The $(MODULE_SUMMARY_go) has been installed.
|
||||||
|
|
||||||
|
To check the sample app, run these commands:
|
||||||
|
|
||||||
|
go build -o /tmp/go-app /usr/share/doc/unit-go/examples/go-app/let-my-people.go
|
||||||
|
sudo service unit start
|
||||||
|
sudo service unit loadconfig /usr/share/doc/unit-go/examples/unit.config
|
||||||
|
curl http://localhost:8500/
|
||||||
|
|
||||||
|
Online documentation is available at https://unit.nginx.org
|
||||||
|
|
||||||
|
----------------------------------------------------------------------
|
||||||
|
BANNER
|
||||||
|
endef
|
||||||
|
export MODULE_POST_go
|
||||||
49
pkg/rpm/Makefile.php
Normal file
49
pkg/rpm/Makefile.php
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
MODULES+= php
|
||||||
|
|
||||||
|
MODULE_SUMMARY_php= PHP module for NGINX Unit
|
||||||
|
|
||||||
|
MODULE_VERSION_php= $(VERSION)
|
||||||
|
MODULE_RELEASE_php= 1
|
||||||
|
|
||||||
|
MODULE_CONFARGS_php= php
|
||||||
|
MODULE_MAKEARGS_php= php
|
||||||
|
MODULE_INSTARGS_php= php-install
|
||||||
|
|
||||||
|
MODULE_SOURCES_php= unit.example-php-app \
|
||||||
|
unit.example-php-config
|
||||||
|
|
||||||
|
BUILD_DEPENDS+= php-devel php-embedded
|
||||||
|
|
||||||
|
define MODULE_PREINSTALL_php
|
||||||
|
%{__mkdir} -p %{buildroot}%{_datadir}/doc/unit-php/examples/phpinfo-app
|
||||||
|
%{__install} -m 644 -p %{SOURCE100} \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit-php/examples/phpinfo-app/index.php
|
||||||
|
%{__install} -m 644 -p %{SOURCE101} \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit-php/examples/unit.config
|
||||||
|
endef
|
||||||
|
export MODULE_PREINSTALL_php
|
||||||
|
|
||||||
|
define MODULE_FILES_php
|
||||||
|
%{_libdir}/unit/modules/*
|
||||||
|
%{_libdir}/unit/debug-modules/*
|
||||||
|
endef
|
||||||
|
export MODULE_FILES_php
|
||||||
|
|
||||||
|
define MODULE_POST_php
|
||||||
|
cat <<BANNER
|
||||||
|
----------------------------------------------------------------------
|
||||||
|
|
||||||
|
The $(MODULE_SUMMARY_php) has been installed.
|
||||||
|
|
||||||
|
To check out the sample app, run these commands:
|
||||||
|
|
||||||
|
sudo service unit start
|
||||||
|
sudo service unit loadconfig /usr/share/doc/unit-php/examples/unit.config
|
||||||
|
curl http://localhost:8300/
|
||||||
|
|
||||||
|
Online documentation is available at https://unit.nginx.org
|
||||||
|
|
||||||
|
----------------------------------------------------------------------
|
||||||
|
BANNER
|
||||||
|
endef
|
||||||
|
export MODULE_POST_php
|
||||||
49
pkg/rpm/Makefile.python
Normal file
49
pkg/rpm/Makefile.python
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
MODULES+= python
|
||||||
|
|
||||||
|
MODULE_SUMMARY_python= Python module for NGINX Unit
|
||||||
|
|
||||||
|
MODULE_VERSION_python= $(VERSION)
|
||||||
|
MODULE_RELEASE_python= 1
|
||||||
|
|
||||||
|
MODULE_CONFARGS_python= python
|
||||||
|
MODULE_MAKEARGS_python= python
|
||||||
|
MODULE_INSTARGS_python= python-install
|
||||||
|
|
||||||
|
MODULE_SOURCES_python= unit.example-python-app \
|
||||||
|
unit.example-python-config
|
||||||
|
|
||||||
|
BUILD_DEPENDS+= python-devel
|
||||||
|
|
||||||
|
define MODULE_PREINSTALL_python
|
||||||
|
%{__mkdir} -p %{buildroot}%{_datadir}/doc/unit-python/examples/python-app
|
||||||
|
%{__install} -m 644 -p %{SOURCE100} \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit-python/examples/python-app/wsgi.py
|
||||||
|
%{__install} -m 644 -p %{SOURCE101} \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit-python/examples/unit.config
|
||||||
|
endef
|
||||||
|
export MODULE_PREINSTALL_python
|
||||||
|
|
||||||
|
define MODULE_FILES_python
|
||||||
|
%{_libdir}/unit/modules/*
|
||||||
|
%{_libdir}/unit/debug-modules/*
|
||||||
|
endef
|
||||||
|
export MODULE_FILES_python
|
||||||
|
|
||||||
|
define MODULE_POST_python
|
||||||
|
cat <<BANNER
|
||||||
|
----------------------------------------------------------------------
|
||||||
|
|
||||||
|
The $(MODULE_SUMMARY_python) has been installed.
|
||||||
|
|
||||||
|
To check the sample app, run these commands:
|
||||||
|
|
||||||
|
sudo service unit start
|
||||||
|
sudo service unit loadconfig /usr/share/doc/unit-python/examples/unit.config
|
||||||
|
curl http://localhost:8400/
|
||||||
|
|
||||||
|
Online documentation is available at https://unit.nginx.org
|
||||||
|
|
||||||
|
----------------------------------------------------------------------
|
||||||
|
BANNER
|
||||||
|
endef
|
||||||
|
export MODULE_POST_python
|
||||||
20
pkg/rpm/rpmbuild/SOURCES/unit.example-go-app
Normal file
20
pkg/rpm/rpmbuild/SOURCES/unit.example-go-app
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"net/http"
|
||||||
|
"unit"
|
||||||
|
)
|
||||||
|
|
||||||
|
func handler(w http.ResponseWriter, r *http.Request) {
|
||||||
|
w.Header().Add("Content-Type", "text/plain");
|
||||||
|
|
||||||
|
fmt.Fprintf(w, "Method : %s\n", r.Method)
|
||||||
|
fmt.Fprintf(w, "URL : %s\n", r.URL.Path)
|
||||||
|
fmt.Fprintf(w, "Host : %s\n", r.Host)
|
||||||
|
}
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
http.HandleFunc("/", handler)
|
||||||
|
unit.ListenAndServe("8000", nil)
|
||||||
|
}
|
||||||
15
pkg/rpm/rpmbuild/SOURCES/unit.example-go-config
Normal file
15
pkg/rpm/rpmbuild/SOURCES/unit.example-go-config
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"applications": {
|
||||||
|
"example_go": {
|
||||||
|
"type": "go",
|
||||||
|
"user": "nobody",
|
||||||
|
"executable": "/tmp/go-app"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"listeners": {
|
||||||
|
"*:8500": {
|
||||||
|
"application": "example_go"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
1
pkg/rpm/rpmbuild/SOURCES/unit.example-php-app
Normal file
1
pkg/rpm/rpmbuild/SOURCES/unit.example-php-app
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<?php phpinfo(); ?>
|
||||||
17
pkg/rpm/rpmbuild/SOURCES/unit.example-php-config
Normal file
17
pkg/rpm/rpmbuild/SOURCES/unit.example-php-config
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"applications": {
|
||||||
|
"example_php": {
|
||||||
|
"type": "php",
|
||||||
|
"user": "nobody",
|
||||||
|
"workers": 2,
|
||||||
|
"root": "/usr/share/doc/unit-php/examples/phpinfo-app",
|
||||||
|
"index": "index.php"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"listeners": {
|
||||||
|
"*:8300": {
|
||||||
|
"application": "example_php"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
16
pkg/rpm/rpmbuild/SOURCES/unit.example-python-app
Normal file
16
pkg/rpm/rpmbuild/SOURCES/unit.example-python-app
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
import os
|
||||||
|
import datetime
|
||||||
|
import sys
|
||||||
|
|
||||||
|
def application(environ, start_response):
|
||||||
|
output = datetime.datetime.now().strftime("%Y-%m-%d %I:%M:%S %p")
|
||||||
|
output += "\n\nPython: "
|
||||||
|
output += sys.version
|
||||||
|
output += "\n\nENV Variables:\n\n"
|
||||||
|
for param in os.environ.keys():
|
||||||
|
output += param
|
||||||
|
output += "\t"
|
||||||
|
output += os.environ[param]
|
||||||
|
output += "\n"
|
||||||
|
start_response('200 OK', [('Content-type', 'text/plain')])
|
||||||
|
return output.encode('utf8')
|
||||||
17
pkg/rpm/rpmbuild/SOURCES/unit.example-python-config
Normal file
17
pkg/rpm/rpmbuild/SOURCES/unit.example-python-config
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"applications": {
|
||||||
|
"example_python": {
|
||||||
|
"type": "python",
|
||||||
|
"user": "nobody",
|
||||||
|
"workers": 2,
|
||||||
|
"path": "/usr/share/doc/unit-python/examples/python-app",
|
||||||
|
"module": "wsgi"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"listeners": {
|
||||||
|
"*:8400": {
|
||||||
|
"application": "example_python"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
39
pkg/rpm/rpmbuild/SOURCES/unit.example.config
Normal file
39
pkg/rpm/rpmbuild/SOURCES/unit.example.config
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
{
|
||||||
|
"applications": {
|
||||||
|
"example_php": {
|
||||||
|
"type": "php",
|
||||||
|
"user": "nobody",
|
||||||
|
"workers": 2,
|
||||||
|
"root": "/usr/share/doc/unit-php/examples/phpinfo-app",
|
||||||
|
"index": "index.php"
|
||||||
|
},
|
||||||
|
|
||||||
|
"example_python": {
|
||||||
|
"type": "python",
|
||||||
|
"user": "nobody",
|
||||||
|
"workers": 2,
|
||||||
|
"path": "/usr/share/doc/unit-python/examples/python-app",
|
||||||
|
"module": "wsgi"
|
||||||
|
},
|
||||||
|
|
||||||
|
"example_go": {
|
||||||
|
"type": "go",
|
||||||
|
"user": "nobody",
|
||||||
|
"executable": "/tmp/go-app"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"listeners": {
|
||||||
|
"*:8300": {
|
||||||
|
"application": "example_php"
|
||||||
|
},
|
||||||
|
|
||||||
|
"*:8400": {
|
||||||
|
"application": "example_python"
|
||||||
|
},
|
||||||
|
|
||||||
|
"*:8500": {
|
||||||
|
"application": "example_go"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
116
pkg/rpm/rpmbuild/SOURCES/unit.init
Normal file
116
pkg/rpm/rpmbuild/SOURCES/unit.init
Normal file
@@ -0,0 +1,116 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# unitd NGINX Unit
|
||||||
|
#
|
||||||
|
# chkconfig: - 86 14
|
||||||
|
# description: NGINX Unit
|
||||||
|
|
||||||
|
### BEGIN INIT INFO
|
||||||
|
# Provides: unitd
|
||||||
|
# Required-Start: $local_fs $network $named $syslog
|
||||||
|
# Required-Stop: $local_fs $network $named $syslog
|
||||||
|
# Default-Start:
|
||||||
|
# Default-Stop: 0 1 2 3 4 5 6
|
||||||
|
# Short-Description: NGINX Unit
|
||||||
|
# Description: NGINX Unit
|
||||||
|
### END INIT INFO
|
||||||
|
|
||||||
|
# Source function library.
|
||||||
|
. /etc/rc.d/init.d/functions
|
||||||
|
|
||||||
|
exec="/usr/sbin/unitd"
|
||||||
|
prog="unitd"
|
||||||
|
config="/etc/unit/unit.conf"
|
||||||
|
|
||||||
|
if [ -n "$2" ]; then
|
||||||
|
config=$2
|
||||||
|
fi
|
||||||
|
|
||||||
|
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
|
||||||
|
|
||||||
|
lockfile=/var/lock/subsys/$prog
|
||||||
|
|
||||||
|
start() {
|
||||||
|
[ -x $exec ] || exit 5
|
||||||
|
echo -n $"Starting $prog: "
|
||||||
|
daemon $exec $UNITD_OPTIONS
|
||||||
|
retval=$?
|
||||||
|
echo
|
||||||
|
[ $retval -eq 0 ] && touch $lockfile
|
||||||
|
return $retval
|
||||||
|
}
|
||||||
|
|
||||||
|
stop() {
|
||||||
|
echo -n $"Stopping $prog: "
|
||||||
|
killproc $prog
|
||||||
|
retval=$?
|
||||||
|
echo
|
||||||
|
[ $retval -eq 0 ] && rm -f $lockfile
|
||||||
|
return $retval
|
||||||
|
}
|
||||||
|
|
||||||
|
restart() {
|
||||||
|
stop
|
||||||
|
start
|
||||||
|
}
|
||||||
|
|
||||||
|
rh_status() {
|
||||||
|
status $prog
|
||||||
|
}
|
||||||
|
|
||||||
|
rh_status_q() {
|
||||||
|
rh_status &>/dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
start)
|
||||||
|
rh_status_q && exit 0
|
||||||
|
$1
|
||||||
|
;;
|
||||||
|
stop)
|
||||||
|
rh_status_q || exit 0
|
||||||
|
$1
|
||||||
|
;;
|
||||||
|
restart)
|
||||||
|
$1
|
||||||
|
;;
|
||||||
|
reload|force-reload)
|
||||||
|
echo "Not implemented." >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
status)
|
||||||
|
rh_status
|
||||||
|
;;
|
||||||
|
condrestart|try-restart)
|
||||||
|
rh_status_q || exit 0
|
||||||
|
restart
|
||||||
|
;;
|
||||||
|
saveconfig)
|
||||||
|
curl -sS --unix-socket /var/run/control.unit.sock localhost >${config}.new
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo "Could not retreive configuration" >&2
|
||||||
|
rm -f ${config}.new
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
mv ${config}.new ${config}
|
||||||
|
echo "The following configuration has been saved to ${config}:"
|
||||||
|
cat ${config}
|
||||||
|
;;
|
||||||
|
loadconfig)
|
||||||
|
if [ ! -e ${config} ]; then
|
||||||
|
echo "Could not find ${config} for loading" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "Loading configuration from ${config}..."
|
||||||
|
curl -sS -X PUT --data-binary @${config} --unix-socket /var/run/control.unit.sock localhost
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo "Loading failed!" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|saveconfig|loadconfig}"
|
||||||
|
exit 2
|
||||||
|
esac
|
||||||
|
exit $?
|
||||||
25
pkg/rpm/rpmbuild/SOURCES/unit.loadconfig.sh
Normal file
25
pkg/rpm/rpmbuild/SOURCES/unit.loadconfig.sh
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Legacy action script for "service unit loadconfig"
|
||||||
|
|
||||||
|
CONFIG=/etc/unit/config
|
||||||
|
|
||||||
|
if [ -n "$1" ] ; then
|
||||||
|
CONFIG=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -e ${CONFIG} ]; then
|
||||||
|
echo "Could not find ${CONFIG} for loading" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Loading configuration from ${CONFIG}..."
|
||||||
|
|
||||||
|
curl -sS -X PUT --data-binary @${CONFIG} --unix-socket /var/run/control.unit.sock localhost
|
||||||
|
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo "Loading failed!" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit 0
|
||||||
24
pkg/rpm/rpmbuild/SOURCES/unit.saveconfig.sh
Normal file
24
pkg/rpm/rpmbuild/SOURCES/unit.saveconfig.sh
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Legacy action script for "service unit saveconfig"
|
||||||
|
|
||||||
|
CONFIG=/etc/unit/config
|
||||||
|
|
||||||
|
if [ -n "$1" ] ; then
|
||||||
|
CONFIG=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
curl -sS --unix-socket /var/run/control.unit.sock localhost >${CONFIG}.new
|
||||||
|
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo "Could not retreive configuration" >&2
|
||||||
|
rm -f ${CONFIG}.new
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
mv ${CONFIG}.new ${CONFIG}
|
||||||
|
|
||||||
|
echo "The following configuration has been saved to ${CONFIG}:"
|
||||||
|
cat ${CONFIG}
|
||||||
|
|
||||||
|
exit 0
|
||||||
14
pkg/rpm/rpmbuild/SOURCES/unit.service
Normal file
14
pkg/rpm/rpmbuild/SOURCES/unit.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=NGINX Unit
|
||||||
|
Wants=network-online.target
|
||||||
|
After=network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=forking
|
||||||
|
PIDFile=/run/unit.pid
|
||||||
|
EnvironmentFile=-/etc/sysconfig/unitd
|
||||||
|
ExecStart=/usr/sbin/unitd $UNITD_OPTIONS
|
||||||
|
ExecReload=
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
1
pkg/rpm/rpmbuild/SOURCES/unit.sysconf
Normal file
1
pkg/rpm/rpmbuild/SOURCES/unit.sysconf
Normal file
@@ -0,0 +1 @@
|
|||||||
|
UNITD_OPTIONS="--log /var/log/unitd.log --pid /run/unitd.pid"
|
||||||
90
pkg/rpm/unit.module.spec.in
Normal file
90
pkg/rpm/unit.module.spec.in
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
# distribution specific definitions
|
||||||
|
%define bdir %{_builddir}/%{name}-%{version}
|
||||||
|
|
||||||
|
%%MODULE_DEFINITIONS%%
|
||||||
|
|
||||||
|
%if 0%{?rhel} == 7
|
||||||
|
%define dist .el7
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%define unit_version %%UNIT_VERSION%%
|
||||||
|
%define unit_release %%UNIT_RELEASE%%%{?dist}.ngx
|
||||||
|
|
||||||
|
%define CONFIGURE_ARGS $(echo "%%CONFIGURE_ARGS%%")
|
||||||
|
|
||||||
|
Name: %%NAME%%
|
||||||
|
Summary: %%SUMMARY%%
|
||||||
|
Version: %%VERSION%%
|
||||||
|
Release: %%RELEASE%%%{?dist}.ngx
|
||||||
|
License: ASL 2.0
|
||||||
|
Vendor: Nginx Software, Inc.
|
||||||
|
URL: https://unit.nginx.org/
|
||||||
|
Packager: Nginx Software, Inc. <https://www.nginx.com>
|
||||||
|
Group: System Environment/Daemons
|
||||||
|
|
||||||
|
Source0: unit-%{version}.tar.gz
|
||||||
|
%%MODULE_SOURCES%%
|
||||||
|
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
|
||||||
|
Requires: unit == %%UNIT_VERSION%%-%%UNIT_RELEASE%%%{?dist}.ngx
|
||||||
|
|
||||||
|
%description
|
||||||
|
NGINX Unit is a runtime and delivery environment for modern distributed
|
||||||
|
applications. It runs the application code in multiple languages
|
||||||
|
(PHP, Python, Go, etc.), and tightly couples it with traffic delivery
|
||||||
|
in and out of the application. Take this application server and proxy
|
||||||
|
directly in the cloud / container environments and fully control your app
|
||||||
|
dynamically via an API.
|
||||||
|
This package contains %%SUMMARY%%.
|
||||||
|
|
||||||
|
%if 0%{?suse_version}
|
||||||
|
%debug_package
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -qcTn %{name}-%{unit_version}
|
||||||
|
tar --strip-components=1 -zxf %{SOURCE0}
|
||||||
|
|
||||||
|
%build
|
||||||
|
./configure \
|
||||||
|
%{CONFIGURE_ARGS} \
|
||||||
|
--modules=%{_libdir}/unit/debug-modules \
|
||||||
|
--debug
|
||||||
|
./configure %%MODULE_CONFARGS%%
|
||||||
|
make %%MODULE_MAKEARGS%%
|
||||||
|
%{__mv} build build-debug
|
||||||
|
./configure \
|
||||||
|
%{CONFIGURE_ARGS} \
|
||||||
|
--modules=%{_libdir}/unit/modules
|
||||||
|
./configure %%MODULE_CONFARGS%%
|
||||||
|
make %%MODULE_MAKEARGS%%
|
||||||
|
|
||||||
|
%install
|
||||||
|
%{__rm} -rf %{buildroot}
|
||||||
|
%{__mkdir} -p %{buildroot}%{_datadir}/doc/%%NAME%%
|
||||||
|
%{__install} -m 644 -p NOTICE \
|
||||||
|
%{buildroot}%{_datadir}/doc/%%NAME%%/COPYRIGHT
|
||||||
|
%%MODULE_PREINSTALL%%
|
||||||
|
DESTDIR=%{buildroot} make %%MODULE_INSTARGS%%
|
||||||
|
%{__rm} -rf build
|
||||||
|
%{__mv} build-debug build
|
||||||
|
DESTDIR=%{buildroot} make %%MODULE_INSTARGS%%
|
||||||
|
|
||||||
|
%check
|
||||||
|
|
||||||
|
%clean
|
||||||
|
%{__rm} -rf %{buildroot}
|
||||||
|
|
||||||
|
%post
|
||||||
|
if [ $1 -eq 1 ]; then
|
||||||
|
%%MODULE_POST%%
|
||||||
|
fi
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%dir %{_datadir}/doc/%%NAME%%
|
||||||
|
%{_datadir}/doc/%%NAME%%/*
|
||||||
|
%%MODULE_FILES%%
|
||||||
|
|
||||||
|
%changelog
|
||||||
182
pkg/rpm/unit.spec.in
Normal file
182
pkg/rpm/unit.spec.in
Normal file
@@ -0,0 +1,182 @@
|
|||||||
|
# distribution specific definitions
|
||||||
|
%define use_systemd (0%{?rhel} && 0%{?rhel} >= 7) || (0%{?suse_version} == 1315)
|
||||||
|
%define bdir %{_builddir}/%{name}-%{version}
|
||||||
|
%define dotests 0
|
||||||
|
|
||||||
|
%if ( 0%{?rhel} == 5 || 0%{?rhel} == 6 )
|
||||||
|
Requires: initscripts >= 8.36
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?rhel} == 7
|
||||||
|
Requires: systemd
|
||||||
|
BuildRequires: systemd-units
|
||||||
|
%define dist .el7
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?suse_version} == 1315
|
||||||
|
BuildRequires: systemd
|
||||||
|
Requires: systemd
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%define CONFIGURE_ARGS $(echo "%%CONFIGURE_ARGS%%")
|
||||||
|
|
||||||
|
Provides: nginx-unit
|
||||||
|
|
||||||
|
Name: unit
|
||||||
|
Summary: NGINX Unit
|
||||||
|
Version: %%VERSION%%
|
||||||
|
Release: %%RELEASE%%%{?dist}.ngx
|
||||||
|
License: ASL 2.0
|
||||||
|
Vendor: Nginx Software, Inc.
|
||||||
|
URL: https://unit.nginx.org/
|
||||||
|
Packager: Nginx Software, Inc. <https://www.nginx.com>
|
||||||
|
Group: System Environment/Daemons
|
||||||
|
|
||||||
|
Source0: unit-%{version}.tar.gz
|
||||||
|
Source1: unit.service
|
||||||
|
Source2: unit.init
|
||||||
|
Source3: unit.sysconf
|
||||||
|
Source4: unit.saveconfig.sh
|
||||||
|
Source5: unit.loadconfig.sh
|
||||||
|
Source6: unit.example.config
|
||||||
|
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
|
||||||
|
%description
|
||||||
|
NGINX Unit is a runtime and delivery environment for modern distributed
|
||||||
|
applications. It runs the application code in multiple languages
|
||||||
|
(PHP, Python, Go, etc.), and tightly couples it with traffic delivery
|
||||||
|
in and out of the application. Take this application server and proxy
|
||||||
|
directly in the cloud / container environments and fully control your app
|
||||||
|
dynamically via an API.
|
||||||
|
|
||||||
|
%if 0%{?suse_version}
|
||||||
|
%debug_package
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q
|
||||||
|
|
||||||
|
%build
|
||||||
|
./configure \
|
||||||
|
%{CONFIGURE_ARGS} \
|
||||||
|
--modules=%{_libdir}/unit/debug-modules \
|
||||||
|
--debug
|
||||||
|
%{__make} %{?_smp_mflags}
|
||||||
|
%{__mv} build build-debug
|
||||||
|
./configure \
|
||||||
|
%{CONFIGURE_ARGS} \
|
||||||
|
--modules=%{_libdir}/unit/modules
|
||||||
|
%{__make} %{?_smp_mflags}
|
||||||
|
|
||||||
|
%install
|
||||||
|
%{__rm} -rf %{buildroot}
|
||||||
|
DESTDIR=%{buildroot} make unitd-install
|
||||||
|
%{__install} -m755 %{bdir}/build-debug/unitd \
|
||||||
|
%{buildroot}%{_sbindir}/unitd-debug
|
||||||
|
%{__mkdir} -p %{buildroot}%{_libdir}/unit/modules
|
||||||
|
%{__mkdir} -p %{buildroot}%{_libdir}/unit/debug-modules
|
||||||
|
%{__mkdir} -p %{buildroot}%{_sharedstatedir}/unit
|
||||||
|
%{__mkdir} -p %{buildroot}%{_sysconfdir}/sysconfig
|
||||||
|
%{__install} -m 644 -p %{SOURCE3} \
|
||||||
|
%{buildroot}%{_sysconfdir}/sysconfig/unit
|
||||||
|
%{__mkdir} -p %{buildroot}%{_sysconfdir}/unit
|
||||||
|
%{__mkdir} -p %{buildroot}%{_datadir}/doc/unit/examples
|
||||||
|
%{__install} -m 644 -p %{SOURCE6} \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit/examples/example.config
|
||||||
|
%{__install} -m 644 -p CHANGES \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit/
|
||||||
|
%{__install} -m 644 -p NOTICE \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit/COPYRIGHT
|
||||||
|
%{__install} -m 644 -p README \
|
||||||
|
%{buildroot}%{_datadir}/doc/unit/
|
||||||
|
|
||||||
|
# init scripts
|
||||||
|
%if %{use_systemd}
|
||||||
|
%{__rm} -rf %{buildroot}%{_initrddir}/
|
||||||
|
%{__install} -p -D -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/unit.service
|
||||||
|
%{__mkdir} -p %{buildroot}%{_libexecdir}/initscripts/legacy-actions/unit
|
||||||
|
%{__install} -m755 %SOURCE4 \
|
||||||
|
%{buildroot}%{_libexecdir}/initscripts/legacy-actions/unit/saveconfig
|
||||||
|
%{__install} -m755 %SOURCE5 \
|
||||||
|
%{buildroot}%{_libexecdir}/initscripts/legacy-actions/unit/loadconfig
|
||||||
|
%else
|
||||||
|
%{__mkdir} -p %{buildroot}%{_initrddir}
|
||||||
|
%{__install} -p -D -m 0755 %{SOURCE2} %{buildroot}%{_initrddir}/unit
|
||||||
|
%endif
|
||||||
|
|
||||||
|
QA_SKIP_BUILD_ROOT=1
|
||||||
|
export QA_SKIP_BUILD_ROOT
|
||||||
|
|
||||||
|
%check
|
||||||
|
%if %{dotests}
|
||||||
|
cd %{bdir} && make tests && ./build/tests
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%clean
|
||||||
|
%{__rm} -rf %{buildroot}
|
||||||
|
|
||||||
|
%post
|
||||||
|
if [ $1 -eq 1 ]; then
|
||||||
|
%if %{use_systemd}
|
||||||
|
/usr/bin/systemctl preset unit.service >/dev/null 2>&1 ||:
|
||||||
|
%else
|
||||||
|
/sbin/chkconfig --add unit
|
||||||
|
%endif
|
||||||
|
cat <<BANNER
|
||||||
|
----------------------------------------------------------------------
|
||||||
|
|
||||||
|
Thank you for installing NGINX Unit!
|
||||||
|
|
||||||
|
Additional modules are available in standalone packages.
|
||||||
|
To see the available modules, run "yum list available unit-\*".
|
||||||
|
|
||||||
|
Online documentation is available at https://unit.nginx.org/
|
||||||
|
|
||||||
|
----------------------------------------------------------------------
|
||||||
|
BANNER
|
||||||
|
fi
|
||||||
|
|
||||||
|
%preun
|
||||||
|
if [ $1 -eq 0 ]; then
|
||||||
|
%if %{use_systemd}
|
||||||
|
/usr/bin/systemctl --no-reload disable unit.service >/dev/null 2>&1 ||:
|
||||||
|
/usr/bin/systemctl stop unit.service >/dev/null 2>&1 ||:
|
||||||
|
%else
|
||||||
|
/sbin/service unit stop >/dev/null 2>&1
|
||||||
|
/sbin/chkconfig --del unit
|
||||||
|
%endif
|
||||||
|
fi
|
||||||
|
|
||||||
|
%postun
|
||||||
|
%if %{use_systemd}
|
||||||
|
/usr/bin/systemctl daemon-reload >/dev/null 2>&1 ||:
|
||||||
|
%endif
|
||||||
|
if [ $1 -ge 1 ]; then
|
||||||
|
%if %{use_systemd}
|
||||||
|
/usr/bin/systemctl try-restart unit.service >/dev/null 2>&1 ||:
|
||||||
|
%else
|
||||||
|
/sbin/service unit condrestart >/dev/null 2>&1 ||:
|
||||||
|
%endif
|
||||||
|
fi
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%attr(0755,root,root) %{_sbindir}/unitd
|
||||||
|
%attr(0755,root,root) %{_sbindir}/unitd-debug
|
||||||
|
%config(noreplace) %{_sysconfdir}/sysconfig/unit
|
||||||
|
%dir %{_sysconfdir}/unit
|
||||||
|
%if %{use_systemd}
|
||||||
|
%{_unitdir}/unit.service
|
||||||
|
%dir %{_libexecdir}/initscripts/legacy-actions/unit
|
||||||
|
%{_libexecdir}/initscripts/legacy-actions/unit/*
|
||||||
|
%else
|
||||||
|
%{_initrddir}/unit
|
||||||
|
%endif
|
||||||
|
%dir %{_datadir}/doc/unit
|
||||||
|
%{_datadir}/doc/unit/*
|
||||||
|
%dir %{_libdir}/unit/modules
|
||||||
|
%dir %{_libdir}/unit/debug-modules
|
||||||
|
%dir %{_sharedstatedir}/unit
|
||||||
|
|
||||||
|
%changelog
|
||||||
Reference in New Issue
Block a user