Our internal enterprise requirements include the requirement for all containers running in our infrastructure to have build logs and security scan logs saved. When using Wave + Fusion, our internal ECR-hosted containers (which have build and scan logs already saved) get replaced with Wave containers.
Wave containers have build and scan logs available, but they are hosted externally on the Wave server. In order to retrieve them, you must have a-priori knowledge of the Wave container build ID's and API endpoints to do a 'curl' request to retrieve the logs (
curl https://wave.seqera.io/v1alpha1/scans/<scan_id>
) . Then, the user must manually save the logs somewhere.
Instead of writing our own custom code to try to automatically retrieve and store all the build and scan logs for all Wave containers used by Nextflow when running with Wave + Fusion, it would be much easier if Nextflow itself could just save them via some configurations.
Consider for example the current pre-existing configuration for storing the Wave container in our ECR;
wave.build.repository = '123456789.dkr.ecr.eu-west-1.amazonaws.com/wave/build'
wave.build.cacheRepository = '123456789.dkr.ecr.eu-west-1.amazonaws.com/wave/cache'
it seems like we should be able to use this same method to also store the Wave logs, like this
wave.logs.buildLog = 's3://my-bucket/systems/ecr/wave-logs'
wave.logs.scanLog = 's3://my-bucket/systems/ecr/wave-logs'
Also note that the current wave cli tool has similar capabilities;
wave --freeze -i ubuntu:22.04 --build-repo 123456789.dkr.ecr.us-east-1.amazonaws.com/wave/build
so I would hope this feature could also extend to that as well with something like
wave --freeze -i ubuntu:22.04 --build-repo 123456789.dkr.ecr.us-east-1.amazonaws.com/wave/build --build-log s3://my-bucket/systems/ecr/wave-logs --scan-log s3://my-bucket/systems/ecr/wave-logs