diff options
author | Andrei Belov <defan@nginx.com> | 2018-04-02 15:48:33 +0300 |
---|---|---|
committer | Andrei Belov <defan@nginx.com> | 2018-04-02 15:48:33 +0300 |
commit | aa8f2c3295cbf7e1b8e134e70b135e07c35f88e9 (patch) | |
tree | 73a2802ee4a7758f225a5ebe3fdde96565e814c4 /pkg | |
parent | 2028f3a04be9836ff0f904a487f05bcff75d528d (diff) | |
download | unit-aa8f2c3295cbf7e1b8e134e70b135e07c35f88e9.tar.gz unit-aa8f2c3295cbf7e1b8e134e70b135e07c35f88e9.tar.bz2 |
Added Ruby packaging support.
Diffstat (limited to 'pkg')
-rw-r--r-- | pkg/deb/Makefile | 5 | ||||
-rw-r--r-- | pkg/deb/Makefile.ruby | 47 | ||||
-rw-r--r-- | pkg/deb/debian.module/unit.example-ruby-app | 7 | ||||
-rw-r--r-- | pkg/deb/debian.module/unit.example-ruby-config | 16 | ||||
-rw-r--r-- | pkg/docker/Makefile | 8 | ||||
-rw-r--r-- | pkg/rpm/Makefile | 3 | ||||
-rw-r--r-- | pkg/rpm/Makefile.ruby | 65 | ||||
-rw-r--r-- | pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-app | 7 | ||||
-rw-r--r-- | pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-config | 16 |
9 files changed, 172 insertions, 2 deletions
diff --git a/pkg/deb/Makefile b/pkg/deb/Makefile index ad8e642c..73ff2b8d 100644 --- a/pkg/deb/Makefile +++ b/pkg/deb/Makefile @@ -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=\ diff --git a/pkg/deb/Makefile.ruby b/pkg/deb/Makefile.ruby new file mode 100644 index 00000000..516c41c7 --- /dev/null +++ b/pkg/deb/Makefile.ruby @@ -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 diff --git a/pkg/deb/debian.module/unit.example-ruby-app b/pkg/deb/debian.module/unit.example-ruby-app new file mode 100644 index 00000000..69b015b7 --- /dev/null +++ b/pkg/deb/debian.module/unit.example-ruby-app @@ -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 diff --git a/pkg/deb/debian.module/unit.example-ruby-config b/pkg/deb/debian.module/unit.example-ruby-config new file mode 100644 index 00000000..53eee534 --- /dev/null +++ b/pkg/deb/debian.module/unit.example-ruby-config @@ -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" + } + } +} diff --git a/pkg/docker/Makefile b/pkg/docker/Makefile index 0c5a50ff..140ac5b3 100644 --- a/pkg/docker/Makefile +++ b/pkg/docker/Makefile @@ -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 diff --git a/pkg/rpm/Makefile b/pkg/rpm/Makefile index 718b475d..656eea0b 100644 --- a/pkg/rpm/Makefile +++ b/pkg/rpm/Makefile @@ -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=\ diff --git a/pkg/rpm/Makefile.ruby b/pkg/rpm/Makefile.ruby new file mode 100644 index 00000000..4c7af084 --- /dev/null +++ b/pkg/rpm/Makefile.ruby @@ -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 diff --git a/pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-app b/pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-app new file mode 100644 index 00000000..69b015b7 --- /dev/null +++ b/pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-app @@ -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 diff --git a/pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-config b/pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-config new file mode 100644 index 00000000..53eee534 --- /dev/null +++ b/pkg/rpm/rpmbuild/SOURCES/unit.example-ruby-config @@ -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" + } + } +} |