Subject: Re: bug#32233: Cuirass: Berlin web API times out

From: [email-masked] (Ludovic Courtès)
Date: Mon, 23 Jul 2018 22:07:40 +0200

Clément Lassieur <[email-masked]> skribis:

> Ludovic Courtès <[email-masked]> writes:
>
>> Clément Lassieur <[email-masked]> skribis:
>>
>>>> Is the Web UI already in the current ‘cuirass’ package?
>>>
>>> Soon!  But I think we should change the NGINX config nonetheless because
>>> the json API is useful.
>>
>> The JSON API is available; see ‘berlin-locations.conf’.
>>
>>>> If so, what do we need to change in the nginx config?
>>>
>>> I guess we could add:
>>>
>>> server {
>>
>> [...]
>>
>>>     location / {
>>>         proxy_pass http://localhost:8081;
>>>     }
>>> }
>>
>> I think this change should go do ‘berlin-locations.conf’.
>
> That would conflict with the '/' location of ports 80 and 443.  I was
> rather thinking about using port 8081 for Cuirass.  In that case the
> 'server' block would be needed in berlin.conf.  We would also remove
>
>     # Cuirass.
>     location /specifications { proxy_pass http://localhost:8081; }
>     location /jobsets { proxy_pass http://localhost:8081; }
>     location /build { proxy_pass http://localhost:8081; }
>     location /api { proxy_pass http://localhost:8081; }
>
> from berlin-locations.conf.

Hmm, I think nginx should still expose both the Cuirass HTTP API and UI
and ‘guix publish’ on ports 80 and 443.  So we just need to have:

  location / { proxy_pass http://localhost:8081; }

and then exceptions for ‘guix publish’:

  location \.narinfo { … }
  location /nar/ { … }
  location /log/ { … }
  location /file/ { … }

WDYT?  Or am I missing something?

Thanks,
Ludo’.