Re: Debugging an mcron job

2019-04-01 Thread Jack Hill

On Mon, 1 Apr 2019, Ludovic Courtès wrote:


Jack Hill  skribis:

I've solved this for my service by adding SSL_CERT_DIR to the environment:

https://gitlab.oit.duke.edu/jackhill/guix-at-duke/blob/a9674ec7b0decac94745c91df886817e2fc8a91b/guix-at-duke/services/endpoint-management.scm

Is that a reasonable solution?


I’m (very) late to the party but what you did looks like the right thing
to me.


No worries, I still find the sanity check helpful.


PS: Good to see you’re building interesting stuff with this!


Me too :) I've really enjoyed working with the Guix and mcron building 
blocks.


Best,
Jack

Re: Debugging an mcron job

2019-04-01 Thread Ludovic Courtès
Hello,

Jack Hill  skribis:

> On Tue, 12 Mar 2019, Jack Hill wrote:
>
>> I've figured out what was going wrong with my job (by redirecting
>> the output to a file). It couldn't verify the remote host's
>> certificate:
>>
>> urllib2.URLError: > certificate verify failed (_ssl.c:726)>
>>
>> Now to figure out why. I have nss-certs in my system packages.
>
> I've solved this for my service by adding SSL_CERT_DIR to the environment:
>
> https://gitlab.oit.duke.edu/jackhill/guix-at-duke/blob/a9674ec7b0decac94745c91df886817e2fc8a91b/guix-at-duke/services/endpoint-management.scm
>
> Is that a reasonable solution?

I’m (very) late to the party but what you did looks like the right thing
to me.

Ludo’.

PS: Good to see you’re building interesting stuff with this!



Re: Debugging an mcron job

2019-04-01 Thread Ludovic Courtès
Hello,

Jack Hill  skribis:

> On Tue, 12 Mar 2019, Jack Hill wrote:
>
>> I've figured out what was going wrong with my job (by redirecting
>> the output to a file). It couldn't verify the remote host's
>> certificate:
>>
>> urllib2.URLError: > certificate verify failed (_ssl.c:726)>
>>
>> Now to figure out why. I have nss-certs in my system packages.
>
> I've solved this for my service by adding SSL_CERT_DIR to the environment:
>
> https://gitlab.oit.duke.edu/jackhill/guix-at-duke/blob/a9674ec7b0decac94745c91df886817e2fc8a91b/guix-at-duke/services/endpoint-management.scm
>
> Is that a reasonable solution?

I’m (very) late to the party but what you did looks like the right thing
to me.

Ludo’.



Re: Debugging an mcron job

2019-03-12 Thread Jack Hill

On Tue, 12 Mar 2019, Jack Hill wrote:

I've figured out what was going wrong with my job (by redirecting the output 
to a file). It couldn't verify the remote host's certificate:


urllib2.URLError: verify failed (_ssl.c:726)>


Now to figure out why. I have nss-certs in my system packages.


I've solved this for my service by adding SSL_CERT_DIR to the environment:

https://gitlab.oit.duke.edu/jackhill/guix-at-duke/blob/a9674ec7b0decac94745c91df886817e2fc8a91b/guix-at-duke/services/endpoint-management.scm

Is that a reasonable solution?

Best,
Jack



Re: Debugging an mcron job

2019-03-12 Thread Jack Hill
I've figured out what was going wrong with my job (by redirecting the 
output to a file). It couldn't verify the remote host's certificate:


urllib2.URLError: 

Now to figure out why. I have nss-certs in my system packages.

Best,
Jack




Debugging an mcron job

2019-03-11 Thread Jack Hill

Hi Guix,

I'm looking for help or tips on debugging an mcron job. My goal is to run 
a site-specific telemetry script that I have packaged [0] in my channel. 
The script collects some information and sends it to a remote server. I am 
trying to run the script as an mcron job via a service I created in my 
channel [1].


[0] 
https://gitlab.oit.duke.edu/jackhill/guix-at-duke/blob/0ed0a8e7530ef32b9e268d43b36944e38defa5f1/guix-at-duke/packages/endpoint-management.scm#L98-140
[1] 
https://gitlab.oit.duke.edu/jackhill/guix-at-duke/blob/0ed0a8e7530ef32b9e268d43b36944e38defa5f1/guix-at-duke/services/endpoint-management.scm

So far, this looks good, and after pulling my channel, reconfiguring, and 
restarting mcron, I can see my job in herd schedule mcron:


"""
# herd schedule mcron
Tue Mar 12 00:51:00 2019 -0400
/gnu/store/61692zjpkhy3jqv4a7jk1k8a14k6yn8k-planisphere-report-0-0.1b606af/bin/planisphere-report
…
"""

However, this doesn't appear to work because after the appointed time, the 
remote server is not updated. If I run the planisphere-report command by 
hand, the remote server is updated.


If I replace the planisphere-report command in my job with 
"/run/current-system/profile/bin/touch /tmp/test-file", test-file is 
indeed touched, so I know that the jobs are running.


Being fairly new to Guix, and extremely new to mcron, I don't know how to 
debug further. Are jobs run in such a way that they don't have network 
access? How can I see any errors or output?


Best,
Jack

P.S. I'm happy to accept any comments about how to improve the code in my 
channel as well ☺.