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

[HTCondor-users] Recover the docker container exit code in the PostScript



Hi,

 

I am testing the latest HTCondor release:

python3-condor-24.10.0-0.817740.el9.x86_64

condor-24.10.0-0.817740.el9.x86_64

 

And I have found an issue with the “PostScript” (or maybe is because I was using incorrectly it from the beginning)

 

I am running the jobs in the docker universe, and I have a PostScript to perform some actions after the container has finished.

In this script I need to know the exit status of the container (signal or exit code) and up to now I was able to get that information directly at the working directory with a code like:

 

Import classad2 as classad

 

job_ad = os.environ.get('_CONDOR_JOB_AD')

with open(job_ad, 'r') as ft:

    ca = classad.parseOne(ft)

 

toe = ca[‘ToE’]

if toe[‘ExitBySignal’]:

    signal = toe[‘ExitSignal’]

else:

    code = toe[‘ExitCode’]

         

 

Now ToE is not any longer in the job ads. In the submitter is not an issue, as I can find the same information in TerminatedNormally, ReturnValue and TerminatedBySignal, but in the PostScript I cannot get that values any longer.

I only find:

ExitBySignal = false

ExitStatus = 0

With that values, no matter how the contaier has really finished.

 

Is the job ad file being updated once the docker container finish?

I am using the proper way to recover the exit status of the container?

 

Thanks!

Andrés Ayala

 


Any email message from EUMETSAT is sent in good faith but shall neither be binding nor construed as constituting a commitment by EUMETSAT, except where provided for in a written agreement or contract or if explicitly stated in the email. Please note that any views or opinions presented in this email are solely those of the sender and do not necessarily represent those of EUMETSAT. This message and any attachments are intended for the sole use of the addressee(s) and may contain confidential and privileged information. Any unauthorised use, disclosure, dissemination or distribution (in whole or in part) of its contents is not permitted. If you received this message in error, please notify the sender and delete it from your system.