summary refs log tree commit diff
path: root/pkgs/applications/version-management/sourcehut
diff options
context:
space:
mode:
authorJulien Moutinho <julm+nixpkgs@sourcephile.fr>2021-12-16 05:23:59 +0100
committerTom Bereknyei <tomberek@gmail.com>2021-12-28 22:18:46 -0500
commit5698cdbc6c461621d5da6b6e9e7861a26d7e33d7 (patch)
tree9e30313e1a6946a6da7852e7b190bc002d6548f7 /pkgs/applications/version-management/sourcehut
parent6eb4cf6eea2a06b592647c1349ddbcd67784d5dd (diff)
downloadnixpkgs-5698cdbc6c461621d5da6b6e9e7861a26d7e33d7.tar
nixpkgs-5698cdbc6c461621d5da6b6e9e7861a26d7e33d7.tar.gz
nixpkgs-5698cdbc6c461621d5da6b6e9e7861a26d7e33d7.tar.bz2
nixpkgs-5698cdbc6c461621d5da6b6e9e7861a26d7e33d7.tar.lz
nixpkgs-5698cdbc6c461621d5da6b6e9e7861a26d7e33d7.tar.xz
nixpkgs-5698cdbc6c461621d5da6b6e9e7861a26d7e33d7.tar.zst
nixpkgs-5698cdbc6c461621d5da6b6e9e7861a26d7e33d7.zip
sourcehut: revert upstream commits breaking Unix socket support for Redis
Diffstat (limited to 'pkgs/applications/version-management/sourcehut')
-rw-r--r--pkgs/applications/version-management/sourcehut/builds.nix5
-rw-r--r--pkgs/applications/version-management/sourcehut/meta.nix5
-rw-r--r--pkgs/applications/version-management/sourcehut/patches/redis-socket/build/0001-Revert-Add-build-submission-and-queue-monitoring.patch69
-rw-r--r--pkgs/applications/version-management/sourcehut/patches/redis-socket/meta/0001-Revert-Add-webhook-queue-monitoring.patch48
4 files changed, 127 insertions, 0 deletions
diff --git a/pkgs/applications/version-management/sourcehut/builds.nix b/pkgs/applications/version-management/sourcehut/builds.nix
index ec996754890..fd1eebd8217 100644
--- a/pkgs/applications/version-management/sourcehut/builds.nix
+++ b/pkgs/applications/version-management/sourcehut/builds.nix
@@ -31,6 +31,11 @@ buildPythonPackage rec {
   inherit src version;
   pname = "buildsrht";
 
+  patches = [
+    # Revert change breaking Unix socket support for Redis
+    patches/redis-socket/build/0001-Revert-Add-build-submission-and-queue-monitoring.patch
+  ];
+
   nativeBuildInputs = srht.nativeBuildInputs;
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/version-management/sourcehut/meta.nix b/pkgs/applications/version-management/sourcehut/meta.nix
index 454a6a86589..128df35851e 100644
--- a/pkgs/applications/version-management/sourcehut/meta.nix
+++ b/pkgs/applications/version-management/sourcehut/meta.nix
@@ -38,6 +38,11 @@ buildPythonPackage rec {
   pname = "metasrht";
   inherit version src;
 
+  patches = [
+    # Revert change breaking Unix socket support for Redis
+    patches/redis-socket/meta/0001-Revert-Add-webhook-queue-monitoring.patch
+  ];
+
   nativeBuildInputs = srht.nativeBuildInputs;
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/version-management/sourcehut/patches/redis-socket/build/0001-Revert-Add-build-submission-and-queue-monitoring.patch b/pkgs/applications/version-management/sourcehut/patches/redis-socket/build/0001-Revert-Add-build-submission-and-queue-monitoring.patch
new file mode 100644
index 00000000000..ae8e95ddc0c
--- /dev/null
+++ b/pkgs/applications/version-management/sourcehut/patches/redis-socket/build/0001-Revert-Add-build-submission-and-queue-monitoring.patch
@@ -0,0 +1,69 @@
+From 069b03f85847ed4a9223183b62ee53f420838911 Mon Sep 17 00:00:00 2001
+From: Julien Moutinho <julm+srht@sourcephile.fr>
+Date: Thu, 16 Dec 2021 04:54:24 +0100
+Subject: [PATCH builds.sr.ht] Revert "Add build submission and queue
+ monitoring"
+
+This reverts commit 690f1aa16c77e418dc40109cd5e8fdf4a7ed947a.
+
+This has broken Unix socket support for Redis
+See https://lists.sr.ht/~sircmpwn/sr.ht-dev/%3C20211208082636.65665-1-me%40ignaskiela.eu%3E#%3C20211216033723.wefibfulfjhqnhem@sourcephile.fr%3E
+---
+ buildsrht/app.py    | 3 ---
+ buildsrht/runner.py | 9 +--------
+ 2 files changed, 1 insertion(+), 11 deletions(-)
+
+diff --git a/buildsrht/app.py b/buildsrht/app.py
+index e5321a2..7c9977c 100644
+--- a/buildsrht/app.py
++++ b/buildsrht/app.py
+@@ -36,9 +36,6 @@ class BuildApp(SrhtFlask):
+         self.register_blueprint(secrets)
+         self.register_blueprint(gql_blueprint)
+ 
+-        from buildsrht.runner import builds_queue_metrics_collector
+-        self.metrics_registry.register(builds_queue_metrics_collector)
+-
+         @self.context_processor
+         def inject():
+             return {
+diff --git a/buildsrht/runner.py b/buildsrht/runner.py
+index 7773452..0389c8e 100644
+--- a/buildsrht/runner.py
++++ b/buildsrht/runner.py
+@@ -5,13 +5,10 @@ from srht.config import cfg
+ from srht.database import db
+ from srht.email import send_email
+ from srht.oauth import UserType
+-from srht.metrics import RedisQueueCollector
+-from prometheus_client import Counter
+ 
+ allow_free = cfg("builds.sr.ht", "allow-free", default="no") == "yes"
+ 
+-builds_broker = cfg("builds.sr.ht", "redis")
+-runner = Celery('builds', broker=builds_broker, config_source={
++runner = Celery('builds', broker=cfg("builds.sr.ht", "redis"), config_source={
+     "CELERY_TASK_SERIALIZER": "json",
+     "CELERY_ACCEPT_CONTENT": ["json"],
+     "CELERY_RESULT_SERIALIZER": "json",
+@@ -19,9 +16,6 @@ runner = Celery('builds', broker=builds_broker, config_source={
+     "CELERY_TASK_PROTOCOL": 1
+ })
+ 
+-builds_queue_metrics_collector = RedisQueueCollector(builds_broker, "buildsrht_builds", "Number of builds currently in queue")
+-builds_submitted = Counter("buildsrht_builds_submited", "Number of builds submitted")
+-
+ def queue_build(job, manifest):
+     from buildsrht.types import JobStatus
+     job.status = JobStatus.queued
+@@ -34,7 +28,6 @@ def queue_build(job, manifest):
+                 cfg("sr.ht", "owner-email"),
+                 "Cryptocurrency mining attempt on builds.sr.ht")
+     else:
+-        builds_submitted.inc()
+         run_build.delay(job.id, manifest.to_dict())
+ 
+ def requires_payment(user):
+-- 
+2.34.0
+
diff --git a/pkgs/applications/version-management/sourcehut/patches/redis-socket/meta/0001-Revert-Add-webhook-queue-monitoring.patch b/pkgs/applications/version-management/sourcehut/patches/redis-socket/meta/0001-Revert-Add-webhook-queue-monitoring.patch
new file mode 100644
index 00000000000..9ec37670b06
--- /dev/null
+++ b/pkgs/applications/version-management/sourcehut/patches/redis-socket/meta/0001-Revert-Add-webhook-queue-monitoring.patch
@@ -0,0 +1,48 @@
+From d88bee195797c6c294320617ff14798da94cd0f3 Mon Sep 17 00:00:00 2001
+From: Julien Moutinho <julm+srht@sourcephile.fr>
+Date: Thu, 16 Dec 2021 04:52:08 +0100
+Subject: [PATCH meta.sr.ht] Revert "Add webhook queue monitoring"
+
+This reverts commit 9931df3c23094af5179df9ef019ca732b8125dac.
+
+This has broken Unix socket support for Redis.
+See https://lists.sr.ht/~sircmpwn/sr.ht-dev/%3C20211208082636.65665-1-me%40ignaskiela.eu%3E#%3C20211216033723.wefibfulfjhqnhem@sourcephile.fr%3E
+---
+ metasrht/app.py      | 3 ---
+ metasrht/webhooks.py | 5 +----
+ 2 files changed, 1 insertion(+), 7 deletions(-)
+
+diff --git a/metasrht/app.py b/metasrht/app.py
+index b190875..89c59bc 100644
+--- a/metasrht/app.py
++++ b/metasrht/app.py
+@@ -49,9 +49,6 @@ class MetaApp(SrhtFlask):
+             from metasrht.blueprints.billing import billing
+             self.register_blueprint(billing)
+ 
+-        from metasrht.webhooks import webhook_metrics_collector
+-        self.metrics_registry.register(webhook_metrics_collector)
+-
+         @self.context_processor
+         def inject():
+             return {
+diff --git a/metasrht/webhooks.py b/metasrht/webhooks.py
+index 3e1149e..3f0ba01 100644
+--- a/metasrht/webhooks.py
++++ b/metasrht/webhooks.py
+@@ -7,11 +7,8 @@ if not hasattr(db, "session"):
+     db.init()
+ from srht.webhook import Event
+ from srht.webhook.celery import CeleryWebhook, make_worker
+-from srht.metrics import RedisQueueCollector
+ 
+-webhook_broker = cfg("meta.sr.ht", "webhooks", "redis://")
+-worker = make_worker(broker=webhook_broker)
+-webhook_metrics_collector = RedisQueueCollector(webhook_broker, "srht_webhooks", "Webhook queue length")
++worker = make_worker(broker=cfg("meta.sr.ht", "webhooks", "redis://"))
+ 
+ class UserWebhook(CeleryWebhook):
+     events = [
+-- 
+2.34.0
+