One of the new exciting features announced at the recent Nextflow Summit was the ability to directly import public Nextflow Pipelines in your Enterprise Seqera Platform ("Tower") instance. https://seqera.io/pipelines/
We are very interested in being able to use this feature. However, we have some considerations that we fear may block or impair our ability to use this. Our company security policies mandate that all containers used on our AWS accounts must be held in our AWS ECR so that they can be made available for security scans, among other things.
This puts us in the situation where, we cannot just add a public pipeline to our Enterprise Seqera Platform instances as-is, we must first introspect the pipeline, dig up all the containers used by it, pull them from their public locations (e.g. Quay.io), and then push them into our ECR. From there, further steps may be required (though these tend to be automated). The biggest hurdle is this step, of extracting all the pipeline's containers and pushing them into our ECR. Then when we add the pipeline to the Platform Launchpad, it will likely require that some supplemental Nextflow Config will be needed in order to change the
docker.registry
, etc., parameters to that of our ECR instead. Note that this also requires that the pipeline itself not have the Registry embedded in the container URI.
As we are in the middle of developing this SOP ourselves, it occurs to me that the Seqera Platform instance (Tower) in the position where it could, theoretically, just do all of this itself, automatically. Upon importing a pipeline, especially from https://seqera.io/pipelines/ , the Enterprise instance should just automatically extract the list of containers and push them into our ECR and then include supplemental configs for that pipeline to only use our ECR, not the public containers.
Is a feature like this available? If not, would it be possible to have something like this developed? Otherwise we are going to have to develop it ourselves and it likely wont be as elegant or robust as what the Platform could have performed or kicked-off itself as part of the pipeline import process.