Added Ruby packaging support.
This commit is contained in:
@@ -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