-
Bug
-
Resolution: Done
-
Critical
-
Pipelines 1.15.0
-
None
-
2
-
False
-
None
-
False
-
-
-
Pipelines Sprint Pioneers 8, Pipelines Sprint Pioneers 9, Pipelines Sprint TekShift 12, Pipelines Sprint TekShift 13
Description of problem:
New resolver task "skopeo-copy" doesn't work when parameter VERBOSE is set to false
Prerequisites (if any, like setup, operators/versions):
Pipelines 1.15.0
OpenShift 4.15
Steps to Reproduce
# create following pipeline run
apiVersion: tekton.dev/v1 kind: PipelineRun metadata: generateName: skopeo-copy-run- spec: pipelineSpec: tasks: - name: run-skopeo-copy taskRef: resolver: cluster params: - name: kind value: task - name: name value: skopeo-copy - name: namespace value: openshift-pipelines params: - name: SOURCE_IMAGE_URL value: "docker://image-registry.openshift-image-registry.svc:5000/openshift/golang" - name: DESTINATION_IMAGE_URL value: "docker://image-registry.openshift-image-registry.svc:5000/$(context.pipelineRun.namespace)/golang:skopeo" - name: DEST_TLS_VERIFY value: "false" - name: VERBOSE value: "false" workspaces: - name: images_url workspace: images_url workspaces: - name: images_url timeouts: pipeline: 5m workspaces: - name: images_url emptyDir: {}
Actual results:
---> Phase: Setting REGISTRY_AUTH_FILE to '/root/.docker/config.json'... ---> Phase: Copying 'docker://image-registry.openshift-image-registry.svc:5000/openshift/golang' into 'docker://image-registry.openshift-image-registry.svc:5000/resolvertasks/golang:skopeo'... + '[' -n docker://image-registry.openshift-image-registry.svc:5000/openshift/golang ']' + '[' -n docker://image-registry.openshift-image-registry.svc:5000/resolvertasks/golang:skopeo ']' + skopeo copy '' --src-tls-verify=true --dest-tls-verify=false docker://image-registry.openshift-image-registry.svc:5000/openshift/golang docker://image-registry.openshift-image-registry.svc:5000/resolvertasks/golang:skopeo Container "IMAGE-NAME" uses a "transport":"details" format. Supported transports: containers-storage, dir, docker, docker-archive, docker-daemon, oci, oci-archive, ostree, sif, tarball See skopeo(1) section "IMAGE NAMES" for the expected format Usage: skopeo copy [command options] SOURCE-IMAGE DESTINATION-IMAGE Examples: skopeo copy docker://quay.io/skopeo/stable:latest docker://registry.example.com/skopeo:latest Flags: --additional-tag strings additional tags (supports docker-archive) -a, --all Copy all images if SOURCE-IMAGE is a list ...
Expected results:
Task copies image from source repository to destination repository
Reproducibility (Always/Intermittent/Only Once):
always
Additional info (Such as Logs, Screenshots, etc):
The issue is caused by empty-string parameter in the command skopeo copy '' --src-tls-verify=true --dest-tls-verify=false docker://image-registry.openshift-image-registry.svc:5000/openshift/golang docker://image-registry.openshift-image-registry.svc:5000/resolvertasks/golang:skopeo
When I set VERBOSE=true, it includes --debug param to skopeo copy and everything works fine.