From nobody Thu Jan 2 16:30:28 2025 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YPByY39scz5jQ1c; Thu, 02 Jan 2025 16:30:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4YPByX4VmPz4cTj; Thu, 2 Jan 2025 16:30:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1735835428; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G0vm9H3hO11XSULfjU0tTSfFSiy2MoC3Tn3Grhr3wHw=; b=rGXOfGSYQvc3Ib+FgJ74DIOhNcoRv0jt/1T29gc9IEpcaGJqDtLA4cMnH5B9+KUHN+OcgV JTDNsgyFDxQUfeZ/vgic9AaBIvr44WATMbry1xSaBlQZaIC63J+ISi2h1iOsSiTTKII1Dw eapEEH9ZSMwRgZEMMiKd0T2ueoQCWrDdidg5vSCsmxlNYM4OKsiulpYeqgpYo7/HEug57b lSAy9F2RLk+fCfGEfH0NsOpxqwAUQ+BAd+jsHQKTT4wt2tFo9w7OoReUVuyhNt3bYLYYPV TKS8DF5TJi5F+6+2yV61HwvZ4kxu4s2/cBjhg/xup7pswE7zIhPTOmaqIOYASg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1735835428; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G0vm9H3hO11XSULfjU0tTSfFSiy2MoC3Tn3Grhr3wHw=; b=Qhgrl5nc9yMsJ6Cdc6So/AB+2sqCfEvBZ3jND8baJLLzwWbFCO8b6fg5Y+7n/+MD1rFSBf y7u+S+D/oeLtaEFE6TW7MAKYxQFuRp8UGAkyqngaUBvbVzZWtonHa/ss/lVpIaii2YyRlb hFDlrHUhblOwpGvSwMXCple3wLfP3vDgDCifWufXGoXPt0tqrJpcF5rAHwuNO+XpuueBYd ZE8EGnTlsL2rB+BTl2L6TDkrTz/zFx+ASEno73QXNkscPku3+FeS2XXUm+Wp7B1WIdD05j um6nqs+tOsyYqQDyxYtKgqgCKhYddJeUB2l1kZPwfw/2G8d0Avp5ejYmSDBm8g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1735835428; a=rsa-sha256; cv=none; b=m/nFG+vbw0kbqKl3gnUG89zV4xoLBc8Vz5KChJZ5vz+UAaXgsCXb/1+lBQPOynsMTXJfaV gS1e7mhBreyqlckPdUhRblMisnCiOoKqHdMlqRkdRbLK4IjWSkCcO+SR29mobqtt0/0G0V izzZoXp+AGb1/devBs5/mgmsHBIt2Ph+ieVafp7aR9dPms46JXKu35cAlHWIjg4ptgpg9L gFScnDoJGixWkGObPa1deWxdLeuBIeJdXvyspPrWcXZYRMVdPwpOUy1zqLaEjjHeaQOuj1 6zq9Mvy1Ph2Z2jpMHb6L3MSkYTKG6mW5XK+PIiW5TlCAC31rc40NaSJlcb2gAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4YPByX454wzlGs; Thu, 02 Jan 2025 16:30:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 502GUSCT048706; Thu, 2 Jan 2025 16:30:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 502GUSU1048703; Thu, 2 Jan 2025 16:30:28 GMT (envelope-from git) Date: Thu, 2 Jan 2025 16:30:28 GMT Message-Id: <202501021630.502GUSU1048703@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Po-Chuan Hsieh Subject: git: 37ff6fafd3d9 - main - www/rubygem-thruster: Add rubygem-thruster 0.1.9 List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-main@freebsd.org Sender: owner-dev-commits-ports-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sunpoet X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 37ff6fafd3d9c9aca4b9d6547f20852ce00659be Auto-Submitted: auto-generated The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=37ff6fafd3d9c9aca4b9d6547f20852ce00659be commit 37ff6fafd3d9c9aca4b9d6547f20852ce00659be Author: Po-Chuan Hsieh AuthorDate: 2025-01-02 16:28:34 +0000 Commit: Po-Chuan Hsieh CommitDate: 2025-01-02 16:28:34 +0000 www/rubygem-thruster: Add rubygem-thruster 0.1.9 Thruster is an HTTP/2 proxy for simple production-ready deployments of Rails applications. It runs alongside the Puma webserver to provide a few additional features that help your app run efficiently and safely on the open Internet: - HTTP/2 support - Automatic TLS certificate management with Let's Encrypt - Basic HTTP caching of public assets - X-Sendfile support and compression, to efficiently serve static files Thruster aims to be as zero-config as possible. It has no configuration file, and most features are automatically enabled with sensible defaults. The goal is that simply running your Puma server with Thruster should be enough to get a production-ready setup. The only exception to this is TLS provisioning: in order for Thruster to provision TLS certificates, it needs to know which domain those certificates should be for. So to use TLS, you need to set the TLS_DOMAIN environment variable. If you don't set this variable, Thruster will run in HTTP-only mode. Thruster also wraps the Puma process so that you can use it without managing multiple processes yourself. This is particularly useful when running in a containerized environment, where you typically won't have a process manager available to coordinate the processes. Instead you can use Thruster as your CMD, and it will manage Puma for you. Thruster was originally created for the ONCE project, where we wanted a no-fuss way to serve a Rails application from a single container, directly on the open Internet. We've since found it useful for simple deployments of other Rails applications. --- www/Makefile | 1 + www/rubygem-thruster/Makefile | 19 +++++++++++++++++++ www/rubygem-thruster/distinfo | 3 +++ www/rubygem-thruster/pkg-descr | 28 ++++++++++++++++++++++++++++ 4 files changed, 51 insertions(+) diff --git a/www/Makefile b/www/Makefile index 6a5c65ecabbc..9a313baca7ad 100644 --- a/www/Makefile +++ b/www/Makefile @@ -2346,6 +2346,7 @@ SUBDIR += rubygem-tailwindcss-rails-rails71 SUBDIR += rubygem-task_list SUBDIR += rubygem-thin + SUBDIR += rubygem-thruster SUBDIR += rubygem-tinyatom SUBDIR += rubygem-tinymce-rails SUBDIR += rubygem-toml-rb diff --git a/www/rubygem-thruster/Makefile b/www/rubygem-thruster/Makefile new file mode 100644 index 000000000000..e9fb70793352 --- /dev/null +++ b/www/rubygem-thruster/Makefile @@ -0,0 +1,19 @@ +PORTNAME= thruster +PORTVERSION= 0.1.9 +CATEGORIES= www rubygems +MASTER_SITES= RG + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Zero-config HTTP/2 proxy for lightweight production deployments +WWW= https://github.com/basecamp/thruster + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/MIT-LICENSE + +USES= gem + +NO_ARCH= yes + +PLIST_FILES= bin/thrust + +.include diff --git a/www/rubygem-thruster/distinfo b/www/rubygem-thruster/distinfo new file mode 100644 index 000000000000..04d3391c4dcb --- /dev/null +++ b/www/rubygem-thruster/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1735802496 +SHA256 (rubygem/thruster-0.1.9.gem) = 8ef3e143012ce2a3b7b6a876cc1878dff8b865f2e95a70561326eca92b0c7f01 +SIZE (rubygem/thruster-0.1.9.gem) = 7680 diff --git a/www/rubygem-thruster/pkg-descr b/www/rubygem-thruster/pkg-descr new file mode 100644 index 000000000000..9c687024e3d1 --- /dev/null +++ b/www/rubygem-thruster/pkg-descr @@ -0,0 +1,28 @@ +Thruster is an HTTP/2 proxy for simple production-ready deployments of Rails +applications. It runs alongside the Puma webserver to provide a few additional +features that help your app run efficiently and safely on the open Internet: +- HTTP/2 support +- Automatic TLS certificate management with Let's Encrypt +- Basic HTTP caching of public assets +- X-Sendfile support and compression, to efficiently serve static files + +Thruster aims to be as zero-config as possible. It has no configuration file, +and most features are automatically enabled with sensible defaults. The goal is +that simply running your Puma server with Thruster should be enough to get a +production-ready setup. + +The only exception to this is TLS provisioning: in order for Thruster to +provision TLS certificates, it needs to know which domain those certificates +should be for. So to use TLS, you need to set the TLS_DOMAIN environment +variable. If you don't set this variable, Thruster will run in HTTP-only mode. + +Thruster also wraps the Puma process so that you can use it without managing +multiple processes yourself. This is particularly useful when running in a +containerized environment, where you typically won't have a process manager +available to coordinate the processes. Instead you can use Thruster as your CMD, +and it will manage Puma for you. + +Thruster was originally created for the ONCE project, where we wanted a no-fuss +way to serve a Rails application from a single container, directly on the open +Internet. We've since found it useful for simple deployments of other Rails +applications.