-
Bug
-
Resolution: Done
-
Major
-
Pipelines 1.9.2
-
1
-
False
-
None
-
False
-
-
-
Pipelines Sprint 245, Pipelines Sprint 246, Pipelines Sprint 247
Description of problem:
Hello,
ClusterTask `skopeo-copy`, from the supported ClusterTasks contains a bug/typo that makes it fail with a not well-documented error.
Basically, the task iterates through a ConfigMap containing a urls.txt file with the pattern:
originURL1 destinationURL1 originURL2 destinationURL2 originURL3 destinationURL3
Then, every line is added to `skopeo-copy "$cmd"`. As it has double quotes, the resulting command is:
skopeo-copy "originURL1 destinationURL1"
which obviously fails, as skopeo-copy expects two different arguments, each with one URL, not only one argument with both.
The solution is as simple as removing the double quotes.
This is the line of code: https://github.com/tektoncd/catalog/blob/main/task/skopeo-copy/0.2/skopeo-copy.yaml#L62
Prerequisites (if any, like setup, operators/versions):
Latest
Steps to Reproduce
- Create a ConfigMap containing the URLs. For example:
apiVersion: v1 kind: ConfigMap metadata: name: bulk-copy-images-configmap namespace: pipelines-test data: url.txt: | docker://registry.redhat.io/ubi8/openjdk-17:1.15 docker://quay.io/alopezme/openjdk-17:1.15 docker://registry.redhat.io/ubi8/openjdk-17:1.15 docker://quay.io/alopezme/pipelines-test:1.15
- Create a Pipeline using the skopeo-copy ClusterTask:
apiVersion: tekton.dev/v1beta1 kind: Pipeline metadata: name: bulk-copy-images namespace: pipelines-test spec: tasks: - name: skopeo-copy params: - name: srcTLSverify value: 'true' - name: destTLSverify value: 'true' taskRef: kind: ClusterTask name: skopeo-copy workspaces: - name: images-url workspace: images-url workspaces: - name: images-url
- Create a PipelineRun invoking the Pipeline with the ConfigMap:{}
apiVersion: tekton.dev/v1beta1 kind: PipelineRun metadata: generateName: bulk-copy-images- namespace: pipelines-test labels: tekton.dev/pipeline: bulk-copy-images spec: pipelineRef: name: bulk-copy-images serviceAccountName: pipeline timeout: 1h0m0s workspaces: - name: images-url configMap: name: bulk-copy-images-configmap
Actual results:
It fails
Expected results:
To copy the images from one container registry to the other.
Reproducibility (Always/Intermittent/Only Once):
Always