Commit Graph
100 Commits
Author SHA1 Message Date
Konstantin PavlovandKonstantin Pavlov 3f805bc64e Packages: added wasm-wasi-component module packaging for deb-based distros
We need to redefine CFLAGS to drop missing-prototypes as warning since
third-party code such as wasmtime fails to build from source when
building a debian package.  This happens only for packages because we
use DPKG_EXPORT_BUILDFLAGS=1 propagating build flags to the environment,
so cargo build picks it up as well.  Since we have no control over
third-party code, the easiest solution is to disable this warning.
2024-02-21 17:45:54 -08:00
Konstantin PavlovandDan Callahan 5570d807d9 Packages: fixed a path to python 3.12 example app 2024-02-20 12:27:52 +00:00
Konstantin PavlovandDan Callahan 183a1e9d63 Docker: redirect logs to stderr
This allows to use /dev/stdout as application logs if users choose to do
so.

Closes: https://github.com/nginx/unit/issues/982
2024-02-20 12:25:00 +00:00
Konstantin PavlovandKonstantin Pavlov baff936be1 Packages: Move dist target to git archive 2024-02-16 13:14:35 -08:00
Konstantin PavlovandKonstantin Pavlov c3af21e970 Docker: Switch to github 2024-02-16 13:13:42 -08:00
Konstantin PavlovandKonstantin Pavlov bad2c181e1 Packages: Added Fedora 39 support. 2024-02-09 14:31:36 -08:00
Konstantin PavlovandKonstantin Pavlov ca1bc0625a contrib: updated njs to 0.8.2. 2024-02-09 14:31:36 -08:00
Konstantin PavlovandKonstantin Pavlov 8ebe04fd5d contrib: Bump libunit-wasm to 0.3.0. 2024-02-09 14:31:36 -08:00
Konstantin PavlovandKonstantin Pavlov 3a2687bb71 Packages: added Ubuntu 23.10 "mantic" support. 2024-02-09 14:31:36 -08:00
Konstantin PavlovandDani De Leo b04455f6c1 Updated security.txt
Refs: https://github.com/nginx/unit-docs/pull/78
2024-01-11 11:45:20 -05:00
Konstantin Pavlov b99e26567f contrib: updated njs to 0.8.1. 2023-10-13 12:12:23 -07:00
Konstantin Pavlov f1ce2a5ac2 Node.js: provide reasonable default paths for macOS. 2023-09-26 16:14:21 -07:00
Konstantin Pavlov 9b22b6957b Fixed tag for 1.31.0 release. 2023-08-30 09:07:24 -07:00
Konstantin Pavlov 31ce5001a0 Regenerated Dockerfiles. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 45bfba04bc Docker: remove gem caches in ruby images. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 7af9f1a175 Docker: remove maven caches in jsc images. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 4caf3abbe4 Docker: remove npm caches in node images. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 9292710f2e Docker: remove build-essential package. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov c1f0aeaea4 Docker: added a container-diff helper.
It's useful to check whether resulting images have unexpected build
leftovers.

Requires https://github.com/GoogleContainerTools/container-diff in
$PATH.
2023-08-22 14:55:10 -07:00
Konstantin Pavlov 78a473743d Docker: be POSIX-compliant in the library creation script. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov c79c60be1c Docker: bumped language versions. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 3562c68ce7 Docker: added meaningful title to metadata. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 5ed7dd53c1 Docker: added wasm variant. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 7874798a3f Docker: use a specific directory to build unit. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov e516d918ed Docker: introduced a "module prebuild" step.
It's now used to install node-gyp on nodejs images.
Starting from node:20, they no longer ship node-gyp that we require to
build the modules with, so we need to install it manually.

Fixes https://github.com/nginx/unit/issues/908.
2023-08-22 14:55:10 -07:00
Konstantin Pavlov ffc6e6b08f Packages: specify runstatedir and logdir explicitely. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov bf3d5759eb Packages: added libunit-wasm and headers to deb packaging. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 260494626b Packages: added libunit-wasm and headers to rpm packaging. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 28037b1f72 contrib: added libunit-wasm and wasi-sysroot. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov fcee584cce Packages: added wasm module packaging for deb-based distros. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov d5c2ed1755 Packages: added wasm module packaging for rpm-based distros. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 1a31863f82 Docs: added changelogs for unit-wasm. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 805f6c24d6 contrib: added wasmtime. 2023-08-22 14:55:10 -07:00
Konstantin Pavlov 36dceaef63 Packages: added pkg-config file packaging for rpm-based distros.
Debian-based distributions package it automatically.
2023-08-22 14:55:10 -07:00
Konstantin Pavlov ebcc92069d Added unit pkg-config file. 2023-08-01 10:16:17 -07:00
Konstantin Pavlov 497f08d15f NJS: explicitely require 0.8.0 or later versions in configure. 2023-07-11 13:02:43 -07:00
Konstantin Pavlov eb614f1147 contrib: updated njs to 0.8.0. 2023-07-11 11:40:41 -07:00
Konstantin Pavlov a3b9b49cfb Packages: added Debian 12 "bookworm" support. 2023-06-07 17:39:27 -07:00
Konstantin Pavlov dc03914418 Regenerated dockerfiles. 2023-05-09 20:20:28 -07:00
Konstantin Pavlov 8ab16f71fe Docker: tagged minimal variant as latest. 2023-05-05 17:20:10 -07:00
Konstantin Pavlov 5b98d87e52 Docker: Makefile housekeeping. 2023-05-05 17:20:06 -07:00
Konstantin Pavlov 6e548cbb30 Docker: added a way to generate multiple versions of an image. 2023-05-05 17:19:55 -07:00
Konstantin Pavlov 7a77f48a25 Packages: added Ubuntu 23.04 "lunar" support. 2023-05-03 16:13:36 -07:00
Konstantin Pavlov 86a701abe0 Docker: made curl fail with non-zero exit code on server errors. 2023-04-12 16:00:32 -07:00
Konstantin Pavlov 4f8a9e305d contrib: updated njs to 0.7.12. 2023-04-11 15:48:01 -07:00
Konstantin Pavlov bfd9a0a30a Docker: fixed a typo. 2023-04-11 15:39:42 -07:00
Konstantin Pavlov 028e537bef Docker: fixed git references. 2023-03-28 14:45:10 -07:00
Konstantin Pavlov 5d83ee6660 Docker: drop apt-get clean usage.
It's automatic in the Debian and Ubuntu containers: https://github.com/debuerreotype/debuerreotype/blob/5cf7949ecf1cec1afece267688bda64cd34a6817/scripts/debuerreotype-minimizing-config#L85-L109
2023-04-06 20:43:22 -07:00
Konstantin Pavlov 472c6d0fb0 Docker: explicitely set uid/gid to 999 for unit user.
This allows us to be consistent through possible updates of default
settings used in distributions.  Previous behaviour was uid/gid were
chosen automatically based on what uids/gids are already taken on the
system.
2023-04-06 20:43:22 -07:00
Konstantin Pavlov 6d51672d8d Packages: use groupadd/useradd on Debian-based operating systems.
addgroup/adduser will no longer be installed by default in the
"minbase".  Also, moving to lower-level utilities saves us one runtime
dependency.
2023-04-06 20:43:22 -07:00
Konstantin Pavlov 886aa17e79 Docker: added OCI image-spec labels. 2023-04-06 20:43:22 -07:00
Konstantin Pavlov 09cd3793aa Docker: specified explicit variants of images to use.
This allows us to decide when to move to a newer underlying distribution
version with our pace instead of relying on Docker Hub cadence.
2023-04-06 20:43:22 -07:00
Konstantin Pavlov 6ed5f1654e Docker: dropped a leftover from a multi-stage build. 2023-04-06 20:43:22 -07:00
Konstantin Pavlov 8392f8c902 Docker: check out packaging tags.
This will ensure we're checking out source code that is close to what we
have in binary packages.

While at it, remove the checkout directory when it's no longer needed.
2023-04-10 15:36:48 -07:00
Konstantin Pavlov 31424f409e Docker: added njs support. 2023-03-30 16:17:59 -07:00
Konstantin Pavlov 73c6c8a7f7 Packages: added unitc and setup-unit. 2023-03-30 16:03:41 -07:00
Konstantin Pavlov 497b84c18f Packages: Used a stricter check for Amazon Linux 2023.
Previously, findstring matched on amazonlinux2 too, breaking the build on that OS.
2023-03-30 10:51:32 -07:00
Konstantin Pavlov 219b8363a4 Packages: fixed rpm builds after 817968931c58. 2023-03-29 12:42:54 -07:00
Konstantin Pavlov 24243ecab3 Packages: Added Amazon Linux 2023. 2023-03-22 16:55:36 -07:00
Konstantin Pavlov 700ee28bbf Packages: check rpm database for actual provides.
Previously, we required an exact non-virtual package, however it's fine
if some package has a fully-virtual provides for what we need.
2023-03-22 16:55:25 -07:00
Konstantin Pavlov e242b1454d Tests: relaxed jar glob.
We install jars with names like websocket-api-${NXT_JAVA_MODULE}-$NXT_VERSION.jar,
which translates to versioned NXT_JAVA_MODULE in the packaging system, e.g.
websocket-api-java11-1.30.0.jar.
2023-03-27 13:16:47 -07:00
Konstantin Pavlov f4298180eb contrib: updated njs to 0.7.10. 2023-02-27 15:45:04 -08:00
Konstantin Pavlov 565dcbb139 Docker: bumped language versions. 2023-02-13 17:04:24 -08:00
Konstantin Pavlov 2a597c5c7a Docker: limited the waiting time for control socket creation.
While at it, fixed a typo.
2023-02-13 17:04:24 -08:00
Konstantin Pavlov 054518bb36 Docker: made dockerfiles use a single stage build process. 2023-02-13 17:04:24 -08:00
Konstantin Pavlov 1d515879f1 contrib: fixed njs make rule. 2023-02-28 10:42:18 -08:00
Konstantin Pavlov 132f7d18a2 contrib: updated njs to 0.7.10. 2023-02-27 15:45:04 -08:00
Konstantin Pavlov b0bb829107 Packages: get rid of deprecated configure options. 2023-02-06 12:39:06 -08:00
Konstantin Pavlov ab3d1297af Packages: do not clean up rpm build root.
These directories are used in the Makefile to determine status of a target.
2022-12-28 20:06:43 -08:00
Konstantin Pavlov 24d4dda255 Docs: added changelog for Python 3.11.
While at it, fixed changelogs generation for Python 3.10 as well.
2022-12-15 08:37:52 -08:00
Konstantin Pavlov cf3ffb8cf3 Packages: Used a more common name for pkg-config.
pkg-config package is named differently on supported rpm-based systems:
- Amazon Linux 2 has pkgconfig
- Fedora has pkgconf-pkg-config
- RHEL 7 has pkgconfig
- RHEL 8 and 9 have pkgconfig-pkg-config

What they share in common is they all provide 'pkgconfig', which we can
use in the spec file so we don't have to specify it per-OS.
2022-12-14 11:52:58 -08:00
Konstantin Pavlov 24e3f17102 Packages: added njs support. 2022-12-07 18:20:44 -08:00
Konstantin Pavlov 11c66941ce Added contribs and njs. 2022-11-29 18:12:54 +04:00
Konstantin Pavlov 63cc4a31bd Docker: limited the waiting time for control socket removal.
Fixes https://github.com/nginx/unit/issues/728
Refs https://github.com/nginx/unit/issues/718
2022-12-13 13:36:39 -08:00
Konstantin Pavlov f09d0e2284 Regenerated Dockerfiles. 2022-12-13 11:50:42 -08:00
Konstantin Pavlov 9f6d7c7ccd Docker: bumped language versions. 2022-12-07 18:31:48 -08:00
Konstantin Pavlov 6afc524116 Packages: added Ubuntu 22.10 "kinetic" support. 2022-11-16 17:05:57 +04:00
Konstantin Pavlov 0feab91c5b Packages: added Fedora 37 support. 2022-11-16 17:06:42 +04:00
Konstantin Pavlov 09ac678943 Used pkg-config to detect njs where available. 2022-11-29 18:10:38 +04:00
Konstantin PavlovandAlejandro Colomar e9c1954dc2 Tools: Added setup-unit.
Downloaded from <https://unit.nginx.org/_downloads/setup-unit.sh>.

Acked-by: Artem Konev <a.konev@f5.com>
Acked-by: Konstantin Pavlov <thresh@nginx.com>
Signed-off-by: Alejandro Colomar <alx@nginx.com>
2022-11-22 13:55:06 +01:00
Konstantin Pavlov 894a2620a7 Propagated NXT_RUBY_CFLAGS to Ruby checks.
This fixes an issue addressed in 651f5a37f5b8 on FreeBSD 12.

The problem manifested itself as:

configuring Ruby module
checking for -fdeclspec ... found
checking for Ruby library ... not found
checking for Ruby library in /usr/local/lib ... not found

./configure: error: no Ruby found.
2022-11-16 18:37:35 +04:00
Konstantin Pavlov 2596a89527 Packages: do not clean up rpm build root.
These directories are used in the Makefile to determine status of a target.
2022-12-28 20:06:43 -08:00
Konstantin Pavlov 2a05b207e7 Docs: added changelog for Python 3.11.
While at it, fixed changelogs generation for Python 3.10 as well.
2022-12-15 08:37:52 -08:00
Konstantin Pavlov 2ac4a7527d Packages: relaxed dependencies between modules and base package.
This allows us to update base or single modules packages without
updating the whole set.
2022-11-04 16:52:19 +04:00
Konstantin Pavlov 11f416878a Packages: added Python 3.8 and Python 3.9 modules on RHEL 8 clones.
Refs: https://github.com/nginx/unit/issues/778
2022-11-04 13:55:16 +04:00
Konstantin Pavlov 4924bd185d Regenerated Dockerfiles. 2022-09-09 17:45:58 +04:00
Konstantin Pavlov 38350c17fc Docker: bumped language versions, moved jsc11 to eclipse-temurin.
openjdk builds are no longer provided in the docker library due to deprecation.
2022-09-09 16:17:42 +04:00
Konstantin Pavlov 97124fc349 Packaging: removed support for SLES and derivatives.
The packages were never built for those OSes.
2022-06-21 15:04:19 +04:00
Konstantin Pavlov 637a2006a6 Packages: cleanup targets that are not supported anymore. 2022-06-20 18:20:11 +04:00
Konstantin Pavlov d220eb2996 Packages: dropped /etc/unit directory.
It's never used.
2022-06-20 10:53:24 +04:00
Konstantin Pavlov e42c52cff6 Switched changelogs to packaging alias instead of personal emails. 2022-06-20 18:21:43 +04:00
Konstantin Pavlov 3d53bba5b3 Packaging: added support for RHEL 9. 2022-05-31 18:35:39 +04:00
Konstantin Pavlov 237ddbe177 Packaging: Go: use GO111MODULE=auto in build instructions. 2022-05-26 10:52:58 +04:00
Konstantin Pavlov 3e06ae3b34 Packages: ship README.md and CONTRIBUTING.md. 2022-05-16 17:22:40 +04:00
Konstantin Pavlov b512eff4ac Packages: added Ubuntu 22.04 "jammy" support. 2022-05-05 13:25:52 +04:00
Konstantin Pavlov 1fe389c2e2 Regenerated Dockerfiles. 2022-05-11 13:06:17 +04:00
Konstantin Pavlov 967fa8f78a Docker: bumped language versions. 2022-05-11 12:59:39 +04:00
Konstantin Pavlov 485886d8f9 Docker: bumped Python image version. 2022-01-13 11:35:12 +03:00
Konstantin Pavlov 6507849282 Docker: bumped PHP image version. 2021-12-17 17:15:55 +03:00
Konstantin Pavlov 3e0ece20b5 Docker: made Dockerfiles architecture agnostic. 2021-12-01 18:34:20 +03:00