mediagoblin-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Redis or RabbitMQ?


From: jgart
Subject: Re: Redis or RabbitMQ?
Date: Sun, 12 Sep 2021 12:44:37 -0400

On Sun, 12 Sep 2021 17:15:48 +1000 Ben Sturmfels <ben@sturm.com.au> wrote:
> PS. Any help on the Guix service front would be amazing. I don't have
> any experience with this at all. :)

Hi Ben,

We'd love to help. We'll start looking into the mediagoblin shepherd service. 

I think as a first step we'll try to organize and understand everything that 
will be
involved in doing a basic deployment of mediagoblin in production.

We'll start my reading the siteadmin/ docs and more specifically 
production-deployments.rst and deploying.rst.

I think it could be very helpful if we could have one session to set up 
mediagoblin together on a debian server just to make sure we're all on the same 
page regarding any details of deploying mediagoblin.

I think we'll probably want to model the mediagoblin.ini and paste.ini as 
scheme records.

A first rough draft of what I mean by that:

```
(define-record-type* <mediagoblin-configuration>
  mediagoblin-configuration make-mediagoblin-configuration 
mediagoblin-configuration?
  (package mediagoblin-configuration-package
           (default mediagoblin))
  (host mediagoblin-configuration-host
        (default "127.0.0.1"))
  (port mediagoblin-configuration-port
        (default 8080))
  (email-sender-address mediagoblin-configuration-email-sender-address
                (default "notice@mediagoblin.example.org"))
  (email-debug-mode mediagoblin-configuration-email-debug-mode
                (default #t))
  (allow-registration mediagoblin-allow-registration
                (default #f))
  (allow-reporting mediagoblin-allow-reporting
                (default #t))
  ;; more config...
  (wsgi mediagoblin-configuration-wsgi)
  (redis mediagoblin-configuration-redis)
  (nginx mediagoblin-configuration-nginx))
```

I think roptat's recently added gitile service could serve as a good starting 
point showing how to use g-expressions and records 
to generate a config file from scheme code. 

See the `gitile-config-file` function and the nested `build` function in the 
version-control module from roptat's definition.

There are probably other services that would be good to look at also to get 
ideas from.

We might also come into problems that haven't been explored yet with guix in 
trying to create this mediagoblin service.

So, we'll have to invent new solutions for those that might not be derived from 
existing Guix System services.

I think it will be good to post on the guix-devel mailing list in order to 
crowdsource ideas about the implementation involved

in this particular mediagoblin service.

The guix community is very helpful with feedback.

all best,

jgart



reply via email to

[Prev in Thread] Current Thread [Next in Thread]