containerbuildsystem/atomic-reactor

Copy all Pulp docker_image units in a single task

Closed this issue · 1 comments

Currently the "pulp_push" plugin copies all image layers separately, each in their own copy task:

             for layer in layers:
                 self.pulp_handler.copy(repo_id, layer)

Instead it should create a set of filters and use those in the task, e.g.

            pulp_filters = {
                'unit': {
                    '$or': [{'image_id': layer}
                            for layer in layers],
                },
            }
            pulp.copy_filters(repo_id, pulp_filters)

This details of this should probably go into the PulpHandler class.

This is done by the linked PR above.