[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] improve nginx-service
From: |
Hartmut Goebel |
Subject: |
Re: [PATCH] improve nginx-service |
Date: |
Fri, 4 Nov 2016 22:28:07 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 |
Hi Julien
thanks for these patches. I applied them to current master, but I did
not work out how to use the new features. I'd appreciate a more complete
example.
0001-Make-nginx-service-extensible.patch
> address@hidden {Scheme Variable} nginx-service-type +This is the type for the
> nginx web server. + +This service can be extended to add more vhosts
> than the default one. + address@hidden +(simple-service 'my-extra-vhost
> nginx-service-type + (list (nginx-vhost-configuration (https-port #f)
> + (root "/var/www/extra-website"))))
I do not understand this. Why would I want to to this? Why not just add
the vhost declaration when defining the service in the system
declaration? Is this for vhost-types which have preset values for some
configuration files? Then a different example might be useful, and/or
some more explanation.
It's a bit more obvious with patch 3, but even that example is not that
obvious to me and could use some more explanation.
I've build a simple service like the gtk-doc-vhost in your second
example, but it not manage to make it work: First I got "error: no
target of type 'nginx'", so I re-added "(nginx-service)" to the system
declaration. Then I got
gnu/services/web.scm:118:34: In procedure default-nginx-vhost-config:
gnu/services/web.scm:118:34: In procedure struct_vtable: Wrong type
argument in position 1 (expecting struct):
(nginx-vhost-configuration (root taler-landing-page))
Si I'd really appreciate seeing a more complete example either in the
documentation of in gn/systems/examples/
> (system* (string-append #$nginx "/sbin/nginx") - "-c" #$config-file
> "-t"))))) + "-c" #$(or config-file + (default-nginx-config
> log-directory + run-directory vhosts)) + "-t")))))
Nitpicking: I'd mode the "-t" to the front, since this is the important
difference.
> (define nginx-shepherd-service (match-lambda - (($
> <nginx-configuration> nginx log-directory run-directory config-file) +
> (($ <nginx-configuration> nginx log-directory run-directory vhosts
> config-file) (let* ((nginx-binary (file-append nginx "/sbin/nginx"))
> (nginx-action (lambda args #~(lambda _ (zero? - (system*
> #$nginx-binary "-c" #$config-file address@hidden)))))) + (system*
> #$nginx-binary "-c" #$(or config-file + (default-nginx-config +
> log-directory + run-directory + vhosts))+ address@hidden))))))
To avoid duplicate code I suggest moving the "#$(or …)" part into a
private function - if this is possible.
0003-services-Accept-gexps-as-nginx-configuration-value.patch
> address@hidden +(simple-service 'gtk-doc-vhost nginx-service-type + (list
> (nginx-vhost-configuration
git am says: trailing whitespace
> + " root " #$(nginx-vhost-configuration-root vhost) ";\n" + " index "
> #$(config-index-strings (nginx-vhost-configuration-index vhost)) ";\n"
> + " server_tokens " #$(if (nginx-vhost-configuration-server-tokens?
> vhost) + "on" "off") ";\n"
Could you please (maybe in another patch) add a way to include
additional config lines? Both for the main server and each vhost.I'm
gioing to need this for adding locations, backends and such.
-- Regards Hartmut Goebel | Hartmut Goebel |
address@hidden | | www.crazy-compilers.com | compilers
which you thought are impossible |
- Re: [PATCH] improve nginx-service, Hartmut Goebel, 2016/11/02
- Re: [PATCH] improve nginx-service, Ludovic Courtès, 2016/11/03
- Re: [PATCH] improve nginx-service, Hartmut Goebel, 2016/11/03
- Re: [PATCH] improve nginx-service, Ludovic Courtès, 2016/11/04
- Re: [PATCH] improve nginx-service, Julien Lepiller, 2016/11/04
- Re: [PATCH] improve nginx-service,
Hartmut Goebel <=
- Re: [PATCH] improve nginx-service, Julien Lepiller, 2016/11/04
- Re: [PATCH] improve nginx-service, Hartmut Goebel, 2016/11/04
- Re: [PATCH] improve nginx-service, Julien Lepiller, 2016/11/06
- Re: [PATCH] improve nginx-service, Hartmut Goebel, 2016/11/04
- Re: [PATCH] improve nginx-service, Tobias Geerinckx-Rice, 2016/11/06
- Re: [PATCH] improve nginx-service, Ludovic Courtès, 2016/11/06
- Re: [PATCH] improve nginx-service, Julien Lepiller, 2016/11/20
- Re: [PATCH] improve nginx-service, Hartmut Goebel, 2016/11/22
- Re: [PATCH] improve nginx-service, julien lepiller, 2016/11/23
- Re: [PATCH] improve nginx-service, Clément Lassieur, 2016/11/25