diff options
Diffstat (limited to '')
20 files changed, 264 insertions, 124 deletions
diff --git a/pkg/deb/Makefile b/pkg/deb/Makefile index 85d5545e..66a5f33a 100644 --- a/pkg/deb/Makefile +++ b/pkg/deb/Makefile @@ -19,34 +19,35 @@ BUILD_DEPENDS = $(BUILD_DEPENDS_unit) MODULES= -# Ubuntu 21.04 -ifeq ($(CODENAME),hirsute) +# Ubuntu 21.10 +ifeq ($(CODENAME),impish) include Makefile.php include Makefile.python27 include Makefile.python39 +include Makefile.python310 include Makefile.go include Makefile.perl include Makefile.ruby include Makefile.jsc-common include Makefile.jsc11 -include Makefile.jsc15 include Makefile.jsc16 include Makefile.jsc17 +include Makefile.jsc18 endif -# Ubuntu 20.10 -ifeq ($(CODENAME),groovy) +# Ubuntu 21.04 +ifeq ($(CODENAME),hirsute) include Makefile.php include Makefile.python27 -include Makefile.python38 +include Makefile.python39 include Makefile.go include Makefile.perl include Makefile.ruby include Makefile.jsc-common include Makefile.jsc11 -include Makefile.jsc13 -include Makefile.jsc14 include Makefile.jsc15 +include Makefile.jsc16 +include Makefile.jsc17 endif # Ubuntu 20.04 @@ -61,46 +62,6 @@ include Makefile.jsc-common include Makefile.jsc11 endif -# Ubuntu 19.10 -ifeq ($(CODENAME),eoan) -include Makefile.php -include Makefile.python27 -include Makefile.python37 -include Makefile.python38 -include Makefile.go -include Makefile.perl -include Makefile.ruby -include Makefile.jsc-common -include Makefile.jsc11 -endif - -# Ubuntu 19.04 -ifeq ($(CODENAME),disco) -include Makefile.php -include Makefile.python27 -include Makefile.python37 -include Makefile.python38 -include Makefile.go -include Makefile.perl -include Makefile.ruby -include Makefile.jsc-common -include Makefile.jsc11 -endif - -# Ubuntu 18.10 -ifeq ($(CODENAME),cosmic) -include Makefile.php -include Makefile.python27 -include Makefile.python36 -include Makefile.python37 -include Makefile.go -include Makefile.perl -include Makefile.ruby -include Makefile.jsc-common -include Makefile.jsc8 -include Makefile.jsc11 -endif - # Ubuntu 18.04 ifeq ($(CODENAME),bionic) include Makefile.php @@ -116,25 +77,6 @@ include Makefile.jsc8 include Makefile.jsc11 endif -# Ubuntu 16.04 -ifeq ($(CODENAME),xenial) -include Makefile.php -include Makefile.python27 -include Makefile.python35 -include Makefile.go -include Makefile.perl -include Makefile.ruby -include Makefile.jsc-common -include Makefile.jsc8 -endif - -# Ubuntu 14.04 -ifeq ($(CODENAME),trusty) -include Makefile.php -include Makefile.python -include Makefile.perl -endif - # Debian 11 ifeq ($(CODENAME),bullseye) include Makefile.php @@ -159,27 +101,6 @@ include Makefile.jsc-common include Makefile.jsc11 endif -# Debian 9 -ifeq ($(CODENAME),stretch) -include Makefile.php -include Makefile.python27 -include Makefile.python35 -include Makefile.go -include Makefile.perl -include Makefile.ruby -include Makefile.jsc-common -include Makefile.jsc8 -endif - -# Debian 8 -ifeq ($(CODENAME),jessie) -include Makefile.php -include Makefile.python27 -include Makefile.python34 -include Makefile.perl -include Makefile.ruby -endif - CONFIGURE_ARGS=\ --prefix=/usr \ --state=/var/lib/unit \ @@ -210,7 +131,7 @@ check-build-depends-%: esac ; \ not_installed= ; \ for pkg in $${pkgs}; do \ - dpkg -s $${pkg} >/dev/null 2>&1 ; \ + dpkg-query -W $${pkg} >/dev/null 2>&1 ; \ if [ $$? -ne 0 ]; then \ not_installed="$${not_installed} $${pkg}" ; \ fi ; \ @@ -231,7 +152,7 @@ debuild/$(SRCDIR)/debian: set -e ; \ mkdir -p debuild/$(SRCDIR) ; \ cp -pr debian debuild/$(SRCDIR) ; \ - echo '9' > debuild/$(SRCDIR)/debian/compat ; \ + echo '11' > debuild/$(SRCDIR)/debian/compat ; \ mkdir -p debuild/$(SRCDIR)/debian/source ; \ echo '3.0 (quilt)' > debuild/$(SRCDIR)/debian/source/format ; \ cat debian/control.in | sed \ @@ -275,7 +196,7 @@ debuild-%: debuild/unit_$(VERSION).orig.tar.gz ../../docs/changes.xml cp debuild/unit_$(VERSION).orig.tar.gz debuild-$*/unit-$(MODULE_SUFFIX_$*)_$(VERSION).orig.tar.gz cd $@ && tar zxf unit-$(MODULE_SUFFIX_$*)_$(VERSION).orig.tar.gz mkdir $@/$(SRCDIR)/debian - echo '9' > $@/$(SRCDIR)/debian/compat + echo '11' > $@/$(SRCDIR)/debian/compat mkdir $@/$(SRCDIR)/debian/source echo '3.0 (quilt)' > $@/$(SRCDIR)/debian/source/format cd ../../docs && make ../build/unit-$(MODULE_SUFFIX_$*).deb-changelog diff --git a/pkg/deb/Makefile.jsc-common b/pkg/deb/Makefile.jsc-common index 5f727124..2b098025 100644 --- a/pkg/deb/Makefile.jsc-common +++ b/pkg/deb/Makefile.jsc-common @@ -6,10 +6,10 @@ MODULE_SUMMARY_jsc_common= Java shared packages for NGINX Unit MODULE_VERSION_jsc_common= $(VERSION) MODULE_RELEASE_jsc_common= 1 -ifneq (,$(findstring $(CODENAME),hirsute groovy focal eoan disco buster bullseye)) -JAVA_MINVERSION= 11 -else +ifneq (,$(findstring $(CODENAME),bionic)) JAVA_MINVERSION= 8 +else +JAVA_MINVERSION= 11 endif MODULE_CONFARGS_jsc_common= java --home=/usr/lib/jvm/java-$(JAVA_MINVERSION)-openjdk-$$\(DEB_HOST_ARCH\) --jars=/usr/share/unit-jsc-common/ diff --git a/pkg/deb/Makefile.jsc18 b/pkg/deb/Makefile.jsc18 new file mode 100644 index 00000000..806aa320 --- /dev/null +++ b/pkg/deb/Makefile.jsc18 @@ -0,0 +1,71 @@ +MODULES+= jsc18 +MODULE_SUFFIX_jsc18= jsc18 + +MODULE_SUMMARY_jsc18= Java 18 module for NGINX Unit + +MODULE_VERSION_jsc18= $(VERSION) +MODULE_RELEASE_jsc18= 1 + +MODULE_CONFARGS_jsc18= java --module=java18 --home=/usr/lib/jvm/java-18-openjdk-$$\(DEB_HOST_ARCH\) --jars=/usr/share/unit-jsc-common/ +MODULE_MAKEARGS_jsc18= java18 +MODULE_INSTARGS_jsc18= java18-install + +MODULE_SOURCES_jsc18= unit.example-jsc-app \ + unit.example-jsc18-config + +BUILD_DEPENDS_jsc18= openjdk-18-jdk-headless openjdk-18-jre-headless +BUILD_DEPENDS+= $(BUILD_DEPENDS_jsc18) + +MODULE_BUILD_DEPENDS_jsc18=,openjdk-18-jdk-headless +MODULE_DEPENDS_jsc18=,openjdk-18-jre-headless,unit-jsc-common (= $(MODULE_VERSION_jsc_common)-$(MODULE_RELEASE_jsc_common)~$(CODENAME)) + +define MODULE_PREINSTALL_jsc18 + mkdir -p debian/unit-jsc18/usr/share/doc/unit-jsc18/examples/jsc-app + install -m 644 -p debian/unit.example-jsc-app debian/unit-jsc18/usr/share/doc/unit-jsc18/examples/jsc-app/index.jsp + install -m 644 -p debian/unit.example-jsc18-config debian/unit-jsc18/usr/share/doc/unit-jsc18/examples/unit.config + install -m 644 -p src/java/README.JSR-340 debian/unit-jsc18/usr/share/doc/unit-jsc18/ +endef +export MODULE_PREINSTALL_jsc18 + +define MODULE_POSTINSTALL_jsc18 + cd $$\(BUILDDIR_unit\) \&\& \ + DESTDIR=$$\(INSTALLDIR\) make java-shared-uninstall +endef +export MODULE_POSTINSTALL_jsc18 + +define MODULE_POST_jsc18 +cat <<BANNER +---------------------------------------------------------------------- + +The $(MODULE_SUMMARY_jsc18) has been installed. + +To check out the sample app, run these commands: + + sudo service unit restart + cd /usr/share/doc/unit-$(MODULE_SUFFIX_jsc18)/examples + sudo curl -X PUT --data-binary @unit.config --unix-socket /var/run/control.unit.sock http://localhost/config + curl http://localhost:8800/ + +Online documentation is available at https://unit.nginx.org + +NOTICE: + +This version of Unit code is made available in support of the open source +development process. This is an intermediate build made available for +testing purposes only. This Unit code is untested and presumed incompatible +with the JSR 340 Java Servlet 3.1 specification. You should not deploy or +write to this code. You should instead deploy and write production +applications on pre-built binaries that have been tested and certified +to meet the JSR-340 compatibility requirements such as certified binaries +published for the JSR-340 reference implementation available at +https://javaee.github.io/glassfish/. + +Redistribution of any Intermediate Build must retain this notice. + +Oracle and Java are registered trademarks of Oracle and/or its affiliates. +Other names may be trademarks of their respective owners. + +---------------------------------------------------------------------- +BANNER +endef +export MODULE_POST_jsc18 diff --git a/pkg/deb/Makefile.python310 b/pkg/deb/Makefile.python310 new file mode 100644 index 00000000..960510a3 --- /dev/null +++ b/pkg/deb/Makefile.python310 @@ -0,0 +1,46 @@ +MODULES+= python310 +MODULE_SUFFIX_python310= python3.10 + +MODULE_SUMMARY_python310= Python 3.10 module for NGINX Unit + +MODULE_VERSION_python310= $(VERSION) +MODULE_RELEASE_python310= 1 + +MODULE_CONFARGS_python310= python --config=python3.10-config +MODULE_MAKEARGS_python310= python3.10 +MODULE_INSTARGS_python310= python3.10-install + +MODULE_SOURCES_python310= unit.example-python-app \ + unit.example-python3.10-config + +BUILD_DEPENDS_python310= python3.10-dev +BUILD_DEPENDS+= $(BUILD_DEPENDS_python310) + +MODULE_BUILD_DEPENDS_python310=,python3.10-dev + +define MODULE_PREINSTALL_python310 + mkdir -p debian/unit-python3.10/usr/share/doc/unit-python3.10/examples/python-app + install -m 644 -p debian/unit.example-python-app debian/unit-python3.10/usr/share/doc/unit-python3.10/examples/python-app/wsgi.py + install -m 644 -p debian/unit.example-python3.10-config debian/unit-python3.10/usr/share/doc/unit-python3.10/examples/unit.config +endef +export MODULE_PREINSTALL_python310 + +define MODULE_POST_python310 +cat <<BANNER +---------------------------------------------------------------------- + +The $(MODULE_SUMMARY_python310) has been installed. + +To check out the sample app, run these commands: + + sudo service unit restart + cd /usr/share/doc/unit-$(MODULE_SUFFIX_python310)/examples + sudo curl -X PUT --data-binary @unit.config --unix-socket /var/run/control.unit.sock http://localhost/config + curl http://localhost:8400/ + +Online documentation is available at https://unit.nginx.org + +---------------------------------------------------------------------- +BANNER +endef +export MODULE_POST_python310 diff --git a/pkg/deb/debian.module/unit.example-jsc18-config b/pkg/deb/debian.module/unit.example-jsc18-config new file mode 100644 index 00000000..08f9f596 --- /dev/null +++ b/pkg/deb/debian.module/unit.example-jsc18-config @@ -0,0 +1,15 @@ +{ + "applications": { + "example_java18": { + "processes": 1, + "type": "java 18", + "webapp": "/usr/share/doc/unit-jsc18/examples/jsc-app" + } + }, + + "listeners": { + "*:8800": { + "pass": "applications/example_java18" + } + } +} diff --git a/pkg/deb/debian.module/unit.example-python3.10-config b/pkg/deb/debian.module/unit.example-python3.10-config new file mode 100644 index 00000000..eaeb6103 --- /dev/null +++ b/pkg/deb/debian.module/unit.example-python3.10-config @@ -0,0 +1,16 @@ +{ + "applications": { + "example_python": { + "type": "python 3.10", + "processes": 2, + "path": "/usr/share/doc/unit-python3.10/examples/python-app", + "module": "wsgi" + } + }, + + "listeners": { + "*:8400": { + "pass": "applications/example_python" + } + } +} diff --git a/pkg/deb/debian/rules.in b/pkg/deb/debian/rules.in index c7a56b6b..3f1f9db8 100644 --- a/pkg/deb/debian/rules.in +++ b/pkg/deb/debian/rules.in @@ -99,11 +99,7 @@ install: build do.tests dh_testroot dh_prep dh_installdirs -ifeq ($(CODENAME), xenial) - dh_installinit -else dh_installsystemd -endif dh_installlogrotate cd $(BUILDDIR_unit) && DESTDIR=$(INSTALLDIR) make install cd $(BUILDDIR_unit) && DESTDIR=$(INSTALLDIR_dev) make libunit-install diff --git a/pkg/docker/Dockerfile.go1.15 b/pkg/docker/Dockerfile.go1.17 index 0c88ff64..2555cb23 100644 --- a/pkg/docker/Dockerfile.go1.15 +++ b/pkg/docker/Dockerfile.go1.17 @@ -1,4 +1,4 @@ -FROM golang:1.15 as BUILDER +FROM golang:1.17 as BUILDER LABEL maintainer="NGINX Docker Maintainers <docker-maint@nginx.com>" @@ -8,7 +8,7 @@ RUN set -ex \ && mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \ && hg clone https://hg.nginx.org/unit \ && cd unit \ - && hg up 1.25.0 \ + && hg up 1.26.0 \ && NCPU="$(getconf _NPROCESSORS_ONLN)" \ && DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \ && CC_OPT="$(DEB_BUILD_MAINT_OPTIONS="hardening=+all,-pie" DEB_CFLAGS_MAINT_APPEND="-Wp,-D_FORTIFY_SOURCE=2 -fPIC" dpkg-buildflags --get CFLAGS)" \ @@ -40,7 +40,7 @@ RUN set -ex \ && make -j $NCPU go-install-src libunit-install \ && ldd /usr/sbin/unitd | awk '/=>/{print $(NF-1)}' | while read n; do dpkg-query -S $n; done | sed 's/^\([^:]\+\):.*$/\1/' | sort | uniq > /requirements.apt -FROM golang:1.15 +FROM golang:1.17 COPY docker-entrypoint.sh /usr/local/bin/ COPY --from=BUILDER /usr/sbin/unitd /usr/sbin/unitd COPY --from=BUILDER /usr/sbin/unitd-debug /usr/sbin/unitd-debug diff --git a/pkg/docker/Dockerfile.jsc11 b/pkg/docker/Dockerfile.jsc11 index 8f62ad3e..091ddf01 100644 --- a/pkg/docker/Dockerfile.jsc11 +++ b/pkg/docker/Dockerfile.jsc11 @@ -8,7 +8,7 @@ RUN set -ex \ && mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \ && hg clone https://hg.nginx.org/unit \ && cd unit \ - && hg up 1.25.0 \ + && hg up 1.26.0 \ && NCPU="$(getconf _NPROCESSORS_ONLN)" \ && DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \ && CC_OPT="$(DEB_BUILD_MAINT_OPTIONS="hardening=+all,-pie" DEB_CFLAGS_MAINT_APPEND="-Wp,-D_FORTIFY_SOURCE=2 -fPIC" dpkg-buildflags --get CFLAGS)" \ diff --git a/pkg/docker/Dockerfile.minimal b/pkg/docker/Dockerfile.minimal index 00875732..18c02898 100644 --- a/pkg/docker/Dockerfile.minimal +++ b/pkg/docker/Dockerfile.minimal @@ -1,4 +1,4 @@ -FROM debian:buster-slim as BUILDER +FROM debian:bullseye-slim as BUILDER LABEL maintainer="NGINX Docker Maintainers <docker-maint@nginx.com>" @@ -8,7 +8,7 @@ RUN set -ex \ && mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \ && hg clone https://hg.nginx.org/unit \ && cd unit \ - && hg up 1.25.0 \ + && hg up 1.26.0 \ && NCPU="$(getconf _NPROCESSORS_ONLN)" \ && DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \ && CC_OPT="$(DEB_BUILD_MAINT_OPTIONS="hardening=+all,-pie" DEB_CFLAGS_MAINT_APPEND="-Wp,-D_FORTIFY_SOURCE=2 -fPIC" dpkg-buildflags --get CFLAGS)" \ @@ -40,7 +40,7 @@ RUN set -ex \ && make -j $NCPU version \ && ldd /usr/sbin/unitd | awk '/=>/{print $(NF-1)}' | while read n; do dpkg-query -S $n; done | sed 's/^\([^:]\+\):.*$/\1/' | sort | uniq > /requirements.apt -FROM debian:buster-slim +FROM debian:bullseye-slim COPY docker-entrypoint.sh /usr/local/bin/ COPY --from=BUILDER /usr/sbin/unitd /usr/sbin/unitd COPY --from=BUILDER /usr/sbin/unitd-debug /usr/sbin/unitd-debug diff --git a/pkg/docker/Dockerfile.node15 b/pkg/docker/Dockerfile.node16 index f98d0ef3..386d0c24 100644 --- a/pkg/docker/Dockerfile.node15 +++ b/pkg/docker/Dockerfile.node16 @@ -1,4 +1,4 @@ -FROM node:15 as BUILDER +FROM node:16 as BUILDER LABEL maintainer="NGINX Docker Maintainers <docker-maint@nginx.com>" @@ -8,7 +8,7 @@ RUN set -ex \ && mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \ && hg clone https://hg.nginx.org/unit \ && cd unit \ - && hg up 1.25.0 \ + && hg up 1.26.0 \ && NCPU="$(getconf _NPROCESSORS_ONLN)" \ && DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \ && CC_OPT="$(DEB_BUILD_MAINT_OPTIONS="hardening=+all,-pie" DEB_CFLAGS_MAINT_APPEND="-Wp,-D_FORTIFY_SOURCE=2 -fPIC" dpkg-buildflags --get CFLAGS)" \ @@ -40,7 +40,7 @@ RUN set -ex \ && make -j $NCPU node node-install libunit-install \ && ldd /usr/sbin/unitd | awk '/=>/{print $(NF-1)}' | while read n; do dpkg-query -S $n; done | sed 's/^\([^:]\+\):.*$/\1/' | sort | uniq > /requirements.apt -FROM node:15 +FROM node:16 COPY docker-entrypoint.sh /usr/local/bin/ COPY --from=BUILDER /usr/sbin/unitd /usr/sbin/unitd COPY --from=BUILDER /usr/sbin/unitd-debug /usr/sbin/unitd-debug diff --git a/pkg/docker/Dockerfile.perl5.32 b/pkg/docker/Dockerfile.perl5.34 index 244eb076..624a059c 100644 --- a/pkg/docker/Dockerfile.perl5.32 +++ b/pkg/docker/Dockerfile.perl5.34 @@ -1,4 +1,4 @@ -FROM perl:5.32 as BUILDER +FROM perl:5.34 as BUILDER LABEL maintainer="NGINX Docker Maintainers <docker-maint@nginx.com>" @@ -8,7 +8,7 @@ RUN set -ex \ && mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \ && hg clone https://hg.nginx.org/unit \ && cd unit \ - && hg up 1.25.0 \ + && hg up 1.26.0 \ && NCPU="$(getconf _NPROCESSORS_ONLN)" \ && DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \ && CC_OPT="$(DEB_BUILD_MAINT_OPTIONS="hardening=+all,-pie" DEB_CFLAGS_MAINT_APPEND="-Wp,-D_FORTIFY_SOURCE=2 -fPIC" dpkg-buildflags --get CFLAGS)" \ @@ -40,7 +40,7 @@ RUN set -ex \ && make -j $NCPU perl-install \ && ldd /usr/sbin/unitd | awk '/=>/{print $(NF-1)}' | while read n; do dpkg-query -S $n; done | sed 's/^\([^:]\+\):.*$/\1/' | sort | uniq > /requirements.apt -FROM perl:5.32 +FROM perl:5.34 COPY docker-entrypoint.sh /usr/local/bin/ COPY --from=BUILDER /usr/sbin/unitd /usr/sbin/unitd COPY --from=BUILDER /usr/sbin/unitd-debug /usr/sbin/unitd-debug diff --git a/pkg/docker/Dockerfile.php8.0 b/pkg/docker/Dockerfile.php8.0 index ba85ce0e..f3a1e10b 100644 --- a/pkg/docker/Dockerfile.php8.0 +++ b/pkg/docker/Dockerfile.php8.0 @@ -8,7 +8,7 @@ RUN set -ex \ && mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \ && hg clone https://hg.nginx.org/unit \ && cd unit \ - && hg up 1.25.0 \ + && hg up 1.26.0 \ && NCPU="$(getconf _NPROCESSORS_ONLN)" \ && DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \ && CC_OPT="$(DEB_BUILD_MAINT_OPTIONS="hardening=+all,-pie" DEB_CFLAGS_MAINT_APPEND="-Wp,-D_FORTIFY_SOURCE=2 -fPIC" dpkg-buildflags --get CFLAGS)" \ diff --git a/pkg/docker/Dockerfile.python3.9 b/pkg/docker/Dockerfile.python3.9 index a3ca8d4a..87e807cc 100644 --- a/pkg/docker/Dockerfile.python3.9 +++ b/pkg/docker/Dockerfile.python3.9 @@ -8,7 +8,7 @@ RUN set -ex \ && mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \ && hg clone https://hg.nginx.org/unit \ && cd unit \ - && hg up 1.25.0 \ + && hg up 1.26.0 \ && NCPU="$(getconf _NPROCESSORS_ONLN)" \ && DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \ && CC_OPT="$(DEB_BUILD_MAINT_OPTIONS="hardening=+all,-pie" DEB_CFLAGS_MAINT_APPEND="-Wp,-D_FORTIFY_SOURCE=2 -fPIC" dpkg-buildflags --get CFLAGS)" \ diff --git a/pkg/docker/Dockerfile.ruby2.7 b/pkg/docker/Dockerfile.ruby3.0 index d5140288..da4dd559 100644 --- a/pkg/docker/Dockerfile.ruby2.7 +++ b/pkg/docker/Dockerfile.ruby3.0 @@ -1,4 +1,4 @@ -FROM ruby:2.7 as BUILDER +FROM ruby:3.0 as BUILDER LABEL maintainer="NGINX Docker Maintainers <docker-maint@nginx.com>" @@ -8,7 +8,7 @@ RUN set -ex \ && mkdir -p /usr/lib/unit/modules /usr/lib/unit/debug-modules \ && hg clone https://hg.nginx.org/unit \ && cd unit \ - && hg up 1.25.0 \ + && hg up 1.26.0 \ && NCPU="$(getconf _NPROCESSORS_ONLN)" \ && DEB_HOST_MULTIARCH="$(dpkg-architecture -q DEB_HOST_MULTIARCH)" \ && CC_OPT="$(DEB_BUILD_MAINT_OPTIONS="hardening=+all,-pie" DEB_CFLAGS_MAINT_APPEND="-Wp,-D_FORTIFY_SOURCE=2 -fPIC" dpkg-buildflags --get CFLAGS)" \ @@ -40,7 +40,7 @@ RUN set -ex \ && make -j $NCPU ruby-install \ && ldd /usr/sbin/unitd | awk '/=>/{print $(NF-1)}' | while read n; do dpkg-query -S $n; done | sed 's/^\([^:]\+\):.*$/\1/' | sort | uniq > /requirements.apt -FROM ruby:2.7 +FROM ruby:3.0 COPY docker-entrypoint.sh /usr/local/bin/ COPY --from=BUILDER /usr/sbin/unitd /usr/sbin/unitd COPY --from=BUILDER /usr/sbin/unitd-debug /usr/sbin/unitd-debug diff --git a/pkg/docker/Makefile b/pkg/docker/Makefile index 00625526..a2c1a52b 100644 --- a/pkg/docker/Makefile +++ b/pkg/docker/Makefile @@ -12,13 +12,13 @@ EXPORT_DIR := $(VERSION) MODULES ?= go jsc node perl php python ruby minimal VERSION_minimal ?= -CONTAINER_minimal ?= debian:buster-slim +CONTAINER_minimal ?= debian:bullseye-slim CONFIGURE_minimal ?= INSTALL_minimal ?= version define COPY_minimal endef -VERSION_go ?= 1.15 +VERSION_go ?= 1.17 CONTAINER_go ?= golang:$(VERSION_go) CONFIGURE_go ?= go --go-path=$$GOPATH INSTALL_go ?= go-install-src libunit-install @@ -34,7 +34,7 @@ CONFIGURE_jsc ?= java --jars=/usr/share/unit-jsc-common/ INSTALL_jsc ?= java-shared-install java-install COPY_jsc = COPY --from=BUILDER /usr/share/unit-jsc-common/ /usr/share/unit-jsc-common/ -VERSION_node ?= 15 +VERSION_node ?= 16 CONTAINER_node ?= node:$(VERSION_node) CONFIGURE_node ?= nodejs --node-gyp=/usr/local/lib/node_modules/npm/bin/node-gyp-bin/node-gyp INSTALL_node ?= node node-install libunit-install @@ -44,7 +44,7 @@ COPY --from=BUILDER /usr/include/nxt_* /usr/include/\n\$ COPY --from=BUILDER /usr/local/lib/node_modules/unit-http/ /usr/local/lib/node_modules/unit-http/ endef -VERSION_perl ?= 5.32 +VERSION_perl ?= 5.34 CONTAINER_perl ?= perl:$(VERSION_perl) CONFIGURE_perl ?= perl INSTALL_perl ?= perl-install @@ -62,7 +62,7 @@ CONFIGURE_python ?= python --config=/usr/local/bin/python3-config INSTALL_python ?= python3-install COPY_python = -VERSION_ruby ?= 2.7 +VERSION_ruby ?= 3.0 CONTAINER_ruby ?= ruby:$(VERSION_ruby) CONFIGURE_ruby ?= ruby INSTALL_ruby ?= ruby-install diff --git a/pkg/rpm/Makefile b/pkg/rpm/Makefile index e67846cf..011eba5b 100644 --- a/pkg/rpm/Makefile +++ b/pkg/rpm/Makefile @@ -134,7 +134,9 @@ include Makefile.php ifeq ($(shell test `rpm --eval '0%{?fedora} -lt 32'`; echo $$?),0) include Makefile.python27 endif -ifeq ($(shell test `rpm --eval '0%{?fedora} -ge 33'`; echo $$?),0) +ifeq ($(shell test `rpm --eval '0%{?fedora} -ge 35'`; echo $$?),0) +include Makefile.python310 +else ifeq ($(shell test `rpm --eval '0%{?fedora} -ge 33'`; echo $$?),0) include Makefile.python39 else ifeq ($(shell test `rpm --eval '0%{?fedora} -ge 32'`; echo $$?),0) include Makefile.python38 diff --git a/pkg/rpm/Makefile.python310 b/pkg/rpm/Makefile.python310 new file mode 100644 index 00000000..82bc311a --- /dev/null +++ b/pkg/rpm/Makefile.python310 @@ -0,0 +1,57 @@ +MODULES+= python310 +MODULE_SUFFIX_python310= python3.10 + +MODULE_SUMMARY_python310= Python 3.10 module for NGINX Unit + +MODULE_VERSION_python310= $(VERSION) +MODULE_RELEASE_python310= 1 + +MODULE_CONFARGS_python310= python --config=python3.10-config +MODULE_MAKEARGS_python310= python3.10 +MODULE_INSTARGS_python310= python3.10-install + +MODULE_SOURCES_python310= unit.example-python-app \ + unit.example-python310-config + +ifneq (,$(findstring $(OSVER),opensuse-tumbleweed sles fedora amazonlinux2)) +BUILD_DEPENDS_python310= python3-devel +else +BUILD_DEPENDS_python310= python310-devel +endif + +BUILD_DEPENDS+= $(BUILD_DEPENDS_python310) + +define MODULE_PREINSTALL_python310 +%{__mkdir} -p %{buildroot}%{_datadir}/doc/unit-python310/examples/python-app +%{__install} -m 644 -p %{SOURCE100} \ + %{buildroot}%{_datadir}/doc/unit-python310/examples/python-app/wsgi.py +%{__install} -m 644 -p %{SOURCE101} \ + %{buildroot}%{_datadir}/doc/unit-python310/examples/unit.config +endef +export MODULE_PREINSTALL_python310 + +define MODULE_FILES_python310 +%{_libdir}/unit/modules/* +%{_libdir}/unit/debug-modules/* +endef +export MODULE_FILES_python310 + +define MODULE_POST_python310 +cat <<BANNER +---------------------------------------------------------------------- + +The $(MODULE_SUMMARY_python310) has been installed. + +To check the sample app, run these commands: + + sudo service unit start + cd /usr/share/doc/%{name}/examples + sudo curl -X PUT --data-binary @unit.config --unix-socket /var/run/unit/control.sock http://localhost/config + curl http://localhost:8400/ + +Online documentation is available at https://unit.nginx.org + +---------------------------------------------------------------------- +BANNER +endef +export MODULE_POST_python310 diff --git a/pkg/rpm/rpmbuild/SOURCES/unit.example-python310-config b/pkg/rpm/rpmbuild/SOURCES/unit.example-python310-config new file mode 100644 index 00000000..8a73ca53 --- /dev/null +++ b/pkg/rpm/rpmbuild/SOURCES/unit.example-python310-config @@ -0,0 +1,16 @@ +{ + "applications": { + "example_python": { + "type": "python 3.10", + "processes": 2, + "path": "/usr/share/doc/unit-python310/examples/python-app", + "module": "wsgi" + } + }, + + "listeners": { + "*:8400": { + "pass": "applications/example_python" + } + } +} diff --git a/pkg/rpm/unit.module.spec.in b/pkg/rpm/unit.module.spec.in index 4f096c73..9b0f6221 100644 --- a/pkg/rpm/unit.module.spec.in +++ b/pkg/rpm/unit.module.spec.in @@ -1,12 +1,12 @@ # distribution specific definitions %define bdir %{_builddir}/%{name}-%{version} -%%MODULE_DEFINITIONS%% - %if (0%{?rhel} == 7 && 0%{?amzn} == 0) %define dist .el7 %endif +%%MODULE_DEFINITIONS%% + %if 0%{?rhel}%{?fedora} BuildRequires: gcc %if 0%{?amzn2} |