You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In order to be able to run processing locally, it is desirable to have some code that will download kernels to a cache location so that they can be furnished from there. There are multiple sources to download from including IMAP SDC and NAIF website.
Proposed general SPICE workflow:
Try to furnish the latest metakernel
Catch any spiceypy.utils.exceptions.NotFoundError exceptions and
Try to download the kernel from IMAP spice files
If 1. fails, try to download the kernel from NAIF
Once we are able to furnish the full metakerel, processing should have everything it needs
A more proactive solution would be to parse the metakernel and check for existence of the kernel files
One issue is that all downloads will need to exactly match the metakernel directory structure. How can we accomplish this in the production EFS mount?
Questions to figure out:
How will this work alongside kernels that are checked in to the repo as test data? For example, do we manually furnish each kernel or keep the current scheme where there is a template metakernel that gets modified with correct local paths at test run time?
Requirements:
Files should be downloaded to where environment variable IMAP_SPICE_DIR points if files don't already exist there.
Setup spice tests with @pytest.mark.spice to they can easily be avoided in CI jobs
It was decided that this ticket as described might be too much. The final implementation was to add test fixtures that can download files from NAIF if needed and only if the tests marked with external_kernel are run.
Algorithm Description:
In order to be able to run processing locally, it is desirable to have some code that will download kernels to a cache location so that they can be furnished from there. There are multiple sources to download from including IMAP SDC and NAIF website.
Proposed general SPICE workflow:
spiceypy.utils.exceptions.NotFoundError
exceptions andQuestions to figure out:
Requirements:
IMAP_SPICE_DIR
points if files don't already exist there.Code:
Reference/reuse Libera code for doing this here: https://lasp.colorado.edu/nucleus/projects/LIBSDC/repos/libera_utils/browse/libera_utils/spice_utils.py
The text was updated successfully, but these errors were encountered: