cnabio / cnab-go

A Go implementation of CNAB Core 1.0
MIT License
69 stars 37 forks source link

Update the docker driver to return early from fetchOutputs #111

Closed jeremyrickard closed 5 years ago

jeremyrickard commented 5 years ago

Update the docker driver to return early from fetchOutputs when there are no outputs defined on the operation. If there are none defined on the operation, there is a good chance /cnab/app/outputs won't exist and we shouldn't try to copy from it in any case. This is currently an issue in duffle (and I assume any other tools that have updated the dependency to pick this up), when no outputs are defined in the bundle. This simply adds a boundary condition check.

If outputs are set on the operation, we should continue and if it doesn't exist that is a failure case with that invocation image.

I think there is a related change we should make where we only return the outputs defined on the operation. I think we are currently returning all the things in /cnab/app/outputs which is probably a little overly presumptive. I didn't handle that here, but I think it will be easier to handle now that the Operation is passed down into the method.

Closes #110.