Added Ruby packaging support.
This commit is contained in:
@@ -10,7 +10,8 @@ PACKAGES= unit \
|
||||
unit-python unit-python2.7 unit-python3.4 \
|
||||
unit-python3.5 unit-python3.6 \
|
||||
unit-go unit-go1.7 unit-go1.8 unit-go1.9 \
|
||||
unit-perl
|
||||
unit-perl \
|
||||
unit-ruby
|
||||
|
||||
|
||||
all: changes changelogs
|
||||
|
||||
@@ -23,6 +23,19 @@ NGINX Unit updated to 0.7.
|
||||
</changes>
|
||||
|
||||
|
||||
<changes apply="unit-ruby" ver="0.7" rev="1"
|
||||
date="2018-04-02" time="15:40:00 +0300"
|
||||
packager="Andrei Belov <defan@nginx.com>">
|
||||
|
||||
<change>
|
||||
<para>
|
||||
Initial release of Ruby module for NGINX Unit.
|
||||
</para>
|
||||
</change>
|
||||
|
||||
</changes>
|
||||
|
||||
|
||||
<changes apply="unit" ver="0.7" rev="1"
|
||||
date="2018-03-22" time="18:00:00 +0300"
|
||||
packager="Andrei Belov <defan@nginx.com>">
|
||||
|
||||
@@ -25,6 +25,7 @@ include Makefile.python36
|
||||
include Makefile.go18
|
||||
include Makefile.go19
|
||||
include Makefile.perl
|
||||
include Makefile.ruby
|
||||
endif
|
||||
|
||||
# Ubuntu 17.04
|
||||
@@ -35,6 +36,7 @@ include Makefile.python35
|
||||
include Makefile.go17
|
||||
include Makefile.go18
|
||||
include Makefile.perl
|
||||
include Makefile.ruby
|
||||
endif
|
||||
|
||||
# Ubuntu 16.04
|
||||
@@ -44,6 +46,7 @@ include Makefile.python27
|
||||
include Makefile.python35
|
||||
include Makefile.go
|
||||
include Makefile.perl
|
||||
include Makefile.ruby
|
||||
endif
|
||||
|
||||
# Ubuntu 14.04
|
||||
@@ -61,6 +64,7 @@ include Makefile.python35
|
||||
include Makefile.go17
|
||||
include Makefile.go18
|
||||
include Makefile.perl
|
||||
include Makefile.ruby
|
||||
endif
|
||||
|
||||
# Debian 8
|
||||
@@ -69,6 +73,7 @@ include Makefile.php
|
||||
include Makefile.python27
|
||||
include Makefile.python34
|
||||
include Makefile.perl
|
||||
include Makefile.ruby
|
||||
endif
|
||||
|
||||
CONFIGURE_ARGS=\
|
||||
|
||||
47
pkg/deb/Makefile.ruby
Normal file
47
pkg/deb/Makefile.ruby
Normal file
@@ -0,0 +1,47 @@
|
||||
MODULES+= ruby
|
||||
MODULE_SUFFIX_ruby= ruby
|
||||
|
||||
MODULE_SUMMARY_ruby= Ruby module for NGINX Unit
|
||||
|
||||
MODULE_VERSION_ruby= $(VERSION)
|
||||
MODULE_RELEASE_ruby= 1
|
||||
|
||||
MODULE_CONFARGS_ruby= ruby
|
||||
MODULE_MAKEARGS_ruby= ruby
|
||||
MODULE_INSTARGS_ruby= ruby-install
|
||||
|
||||
MODULE_SOURCES_ruby= unit.example-ruby-app \
|
||||
unit.example-ruby-config
|
||||
|
||||
BUILD_DEPENDS_ruby= ruby-dev ruby-rack
|
||||
BUILD_DEPENDS+= $(BUILD_DEPENDS_ruby)
|
||||
|
||||
MODULE_BUILD_DEPENDS_ruby=,ruby-dev,ruby-rack
|
||||
|
||||
MODULE_DEPENDS_ruby=,ruby-rack
|
||||
|
||||
define MODULE_PREINSTALL_ruby
|
||||
mkdir -p debian/unit-ruby/usr/share/doc/unit-ruby/examples
|
||||
install -m 644 -p debian/unit.example-ruby-app debian/unit-ruby/usr/share/doc/unit-ruby/examples/ruby-app.ru
|
||||
install -m 644 -p debian/unit.example-ruby-config debian/unit-ruby/usr/share/doc/unit-ruby/examples/unit.config
|
||||
endef
|
||||
export MODULE_PREINSTALL_ruby
|
||||
|
||||
define MODULE_POST_ruby
|
||||
cat <<BANNER
|
||||
----------------------------------------------------------------------
|
||||
|
||||
The $(MODULE_SUMMARY_ruby) has been installed.
|
||||
|
||||
To check out the sample app, run these commands:
|
||||
|
||||
sudo service unit restart
|
||||
sudo service unit loadconfig /usr/share/doc/unit-ruby/examples/unit.config
|
||||
curl http://localhost:8700/
|
||||
|
||||
Online documentation is available at https://unit.nginx.org
|
||||
|
||||
----------------------------------------------------------------------
|
||||
BANNER
|
||||
endef
|
||||
export MODULE_POST_ruby
|
||||
7
pkg/deb/debian.module/unit.example-ruby-app
Normal file
7
pkg/deb/debian.module/unit.example-ruby-app
Normal file
@@ -0,0 +1,7 @@
|
||||
app = Proc.new do |env|
|
||||
['200', {
|
||||
'Content-Type' => 'text/plain',
|
||||
}, ["Hello from Unit running with Ruby #{RUBY_VERSION}!\n\n"]]
|
||||
end
|
||||
|
||||
run app
|
||||
16
pkg/deb/debian.module/unit.example-ruby-config
Normal file
16
pkg/deb/debian.module/unit.example-ruby-config
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"applications": {
|
||||
"example_ruby": {
|
||||
"type": "ruby",
|
||||
"user": "nobody",
|
||||
"processes": 2,
|
||||
"script": "/usr/share/doc/unit-ruby/examples/ruby-app.ru"
|
||||
}
|
||||
},
|
||||
|
||||
"listeners": {
|
||||
"*:8700": {
|
||||
"application": "example_ruby"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -10,7 +10,8 @@ CODENAME := stretch
|
||||
|
||||
UNIT_VERSION = $(VERSION)-$(RELEASE)~$(CODENAME)
|
||||
|
||||
MODULES = python2.7 python3.5 php7.0 go1.7-dev go1.8-dev perl5.24 full minimal
|
||||
MODULES = python2.7 python3.5 php7.0 go1.7-dev go1.8-dev perl5.24 ruby2.3 \
|
||||
full minimal
|
||||
|
||||
MODULE_php7.0="unit=$${UNIT_VERSION} unit-php=$${UNIT_VERSION}"
|
||||
|
||||
@@ -24,7 +25,9 @@ MODULE_go1.8-dev="unit=$${UNIT_VERSION} unit-go1.8=$${UNIT_VERSION} gcc"
|
||||
|
||||
MODULE_perl5.24="unit=$${UNIT_VERSION} unit-perl=$${UNIT_VERSION}"
|
||||
|
||||
MODULE_full="unit=$${UNIT_VERSION} unit-php=$${UNIT_VERSION} unit-python2.7=$${UNIT_VERSION} unit-python3.5=$${UNIT_VERSION} unit-perl=$${UNIT_VERSION}"
|
||||
MODULE_ruby2.3="unit=$${UNIT_VERSION} unit-ruby=$${UNIT_VERSION}"
|
||||
|
||||
MODULE_full="unit=$${UNIT_VERSION} unit-php=$${UNIT_VERSION} unit-python2.7=$${UNIT_VERSION} unit-python3.5=$${UNIT_VERSION} unit-perl=$${UNIT_VERSION} unit-ruby=$${UNIT_VERSION}"
|
||||
|
||||
MODULE_minimal="unit=$${UNIT_VERSION}"
|
||||
|
||||
@@ -35,6 +38,7 @@ export \
|
||||
MODULE_go1.7-dev \
|
||||
MODULE_go1.8-dev \
|
||||
MODULE_perl5.24 \
|
||||
MODULE_ruby2.3 \
|
||||
MODULE_full \
|
||||
MODULE_minimal
|
||||
|
||||
|
||||
@@ -68,6 +68,7 @@ include Makefile.python27
|
||||
include Makefile.python34
|
||||
include Makefile.go
|
||||
include Makefile.perl
|
||||
include Makefile.ruby
|
||||
endif
|
||||
|
||||
ifeq ($(OSVER), opensuse-tumbleweed)
|
||||
@@ -76,6 +77,7 @@ include Makefile.python27
|
||||
include Makefile.python36
|
||||
include Makefile.go
|
||||
include Makefile.perl
|
||||
include Makefile.ruby
|
||||
endif
|
||||
|
||||
ifeq ($(OSVER), sles)
|
||||
@@ -90,6 +92,7 @@ include Makefile.python27
|
||||
include Makefile.python36
|
||||
include Makefile.go
|
||||
include Makefile.perl
|
||||
include Makefile.ruby
|
||||
endif
|
||||
|
||||
CONFIGURE_ARGS=\
|
||||
|
||||
65
pkg/rpm/Makefile.ruby
Normal file
65
pkg/rpm/Makefile.ruby
Normal file
@@ -0,0 +1,65 @@
|
||||
MODULES+= ruby
|
||||
MODULE_SUFFIX_ruby= ruby
|
||||
|
||||
MODULE_SUMMARY_ruby= Ruby module for NGINX Unit
|
||||
|
||||
MODULE_VERSION_ruby= $(VERSION)
|
||||
MODULE_RELEASE_ruby= 1
|
||||
|
||||
MODULE_CONFARGS_ruby= ruby
|
||||
MODULE_MAKEARGS_ruby= ruby
|
||||
MODULE_INSTARGS_ruby= ruby-install
|
||||
|
||||
MODULE_SOURCES_ruby= unit.example-ruby-app \
|
||||
unit.example-ruby-config
|
||||
|
||||
ifeq ($(OSVER), opensuse-leap)
|
||||
RACK_PACKAGE= ruby2.1-rubygem-rack
|
||||
else ifeq ($(OSVER), opensuse-tumbleweed)
|
||||
RACK_PACKAGE= ruby2.5-rubygem-rack
|
||||
else
|
||||
RACK_PACKAGE= rubygem-rack
|
||||
endif
|
||||
|
||||
BUILD_DEPENDS_ruby= ruby-devel $(RACK_PACKAGE)
|
||||
BUILD_DEPENDS+= $(BUILD_DEPENDS_ruby)
|
||||
|
||||
define MODULE_DEFINITIONS_ruby
|
||||
BuildRequires: $(BUILD_DEPENDS_ruby)
|
||||
Requires: $(RACK_PACKAGE)
|
||||
endef
|
||||
export MODULE_DEFINITIONS_ruby
|
||||
|
||||
define MODULE_PREINSTALL_ruby
|
||||
%{__mkdir} -p %{buildroot}%{_datadir}/doc/unit-ruby/examples
|
||||
%{__install} -m 644 -p %{SOURCE100} \
|
||||
%{buildroot}%{_datadir}/doc/unit-ruby/examples/ruby-app.ru
|
||||
%{__install} -m 644 -p %{SOURCE101} \
|
||||
%{buildroot}%{_datadir}/doc/unit-ruby/examples/unit.config
|
||||
endef
|
||||
export MODULE_PREINSTALL_ruby
|
||||
|
||||
define MODULE_FILES_ruby
|
||||
%{_libdir}/unit/modules/*
|
||||
%{_libdir}/unit/debug-modules/*
|
||||
endef
|
||||
export MODULE_FILES_ruby
|
||||
|
||||
define MODULE_POST_ruby
|
||||
cat <<BANNER
|
||||
----------------------------------------------------------------------
|
||||
|
||||
The $(MODULE_SUMMARY_ruby) has been installed.
|
||||
|
||||
To check the sample app, run these commands:
|
||||
|
||||
sudo service unit start
|
||||
sudo service unit loadconfig /usr/share/doc/unit-ruby/examples/unit.config
|
||||
curl http://localhost:8700/
|
||||
|
||||
Online documentation is available at https://unit.nginx.org
|
||||
|
||||
----------------------------------------------------------------------
|
||||
BANNER
|
||||
endef
|
||||
export MODULE_POST_ruby
|
||||
7
pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-app
Normal file
7
pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-app
Normal file
@@ -0,0 +1,7 @@
|
||||
app = Proc.new do |env|
|
||||
['200', {
|
||||
'Content-Type' => 'text/plain',
|
||||
}, ["Hello from Unit running with Ruby #{RUBY_VERSION}!\n\n"]]
|
||||
end
|
||||
|
||||
run app
|
||||
16
pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-config
Normal file
16
pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-config
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"applications": {
|
||||
"example_ruby": {
|
||||
"type": "ruby",
|
||||
"user": "nobody",
|
||||
"processes": 2,
|
||||
"script": "/usr/share/doc/unit-ruby/examples/ruby-app.ru"
|
||||
}
|
||||
},
|
||||
|
||||
"listeners": {
|
||||
"*:8700": {
|
||||
"application": "example_ruby"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user