-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major
-
Affects Version/s: master
-
Component/s: Pegasus Planner
-
None
Hi Karan,
I've been experimenting with the current singularity implementation in 4.8.4 and hit the following problem. I want to use Brian's images from /cvmfs/singularity.opensciencegrid.org/pycbc/pycbc-el7:latest as they are pre-staged to all of our nodes, but I get the error
2018.10.12 09:06:43.922 EDT: [FATAL ERROR]
[1]: Unable to instantiate Transformation Catalog at edu.isi.pegasus.planner.catalog.transformation.TransformationFactory.loadInstance(TransformationFactory.java:172)
[2]: edu.isi.pegasus.planner.catalog.transformation.impl.Text caught edu.isi.pegasus.planner.parser.ScannerException line 28: at edu.isi.pegasus.planner.parser.TransformationCatalogTextParser.parse(TransformationCatalogTextParser.java:236)
[3]: Invalid suffix .opensciencegrid.org/pycbc/pycbc-el7:latest determined singularity image url url -> file:///cvmfs/singularity.opensciencegrid.org/pycbc/pycbc-el7:latest , protocol -> file , host -> , path -> /cvmfs/singularity.opensciencegrid.org/pycbc/pycbc-el7:latest , url-prefix -> file:// at edu.isi.pegasus.planner.catalog.transformation.classes.Container.computeLFN(Container.java:180)
It looks like Pegasus doesn't like the file URL in my transformation catalog:
tr pegasus::findrange:4.0 {
site condorpool
{ pfn "gsiftp://sugwg-condor.phy.syr.edu/usr/bin/pegasus-keg" arch "x86_64" os "linux" # INSTALLED means pfn refers to path in the container. # STAGEABLE means the executable can be staged into the container type "STAGEABLE" #optional attribute to specify the container to use container "centos-pycbc" }}
cont centos-pycbc
{ # can be either docker or singularity type "singularity" # URL to image in a docker|singularity hub OR # URL to an existing docker image exported as a tar file or singularity image image "file:///cvmfs/singularity.opensciencegrid.org/pycbc/pycbc-el7:latest" # optional site attribute to tell pegasus which site tar file # exists. useful for handling file URL's correctly image_site "pycbc" }Cheers,
Duncan.