+ echo -n ea199593-c727-4951-b3d6-3dda672d161e + RESULTS_DIR_PATH=results + '[' -n ea199593-c727-4951-b3d6-3dda672d161e ']' + mkdir -p /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e + RESULTS_DIR_PATH=ea199593-c727-4951-b3d6-3dda672d161e/results + mkdir -p /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e/results + echo -n ea199593-c727-4951-b3d6-3dda672d161e/results + RELEASE_PATH=ea199593-c727-4951-b3d6-3dda672d161e/release.json + echo -n ea199593-c727-4951-b3d6-3dda672d161e/release.json + get-resource release ex-registry-sh-30dc1cf3/snapshot-sample-30dc1cf3-b9m29 + tee /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e/release.json { "apiVersion": "appstudio.redhat.com/v1alpha1", "kind": "Release", "metadata": { "creationTimestamp": "2026-08-27T12:03:17Z", "finalizers": [ "appstudio.redhat.com/release-finalizer" ], "generateName": "snapshot-sample-30dc1cf3-", "generation": 1, "labels": { "appstudio.openshift.io/application": "appstudio", "appstudio.openshift.io/component": "dc-metro-map", "pac.test.appstudio.openshift.io/event-type": "push", "release.appstudio.openshift.io/automated": "true", "release.appstudio.openshift.io/releasePlan": "source-releaseplan", "release.appstudio.openshift.io/snapshot": "snapshot-sample-30dc1cf3" }, "name": "snapshot-sample-30dc1cf3-b9m29", "namespace": "ex-registry-sh-30dc1cf3", "resourceVersion": "8031", "uid": "081ddf5e-92a1-4305-be61-bfe163125e91" }, "spec": { "gracePeriodDays": 7, "releasePlan": "source-releaseplan", "snapshot": "snapshot-sample-30dc1cf3" }, "status": { "attribution": { "author": "kubernetes-admin", "standingAuthorization": true }, "automated": true, "conditions": [ { "lastTransitionTime": "2026-08-27T12:03:17Z", "message": "", "reason": "Progressing", "status": "False", "type": "Released" }, { "lastTransitionTime": "2026-08-27T12:03:17Z", "message": "", "reason": "Succeeded", "status": "True", "type": "Validated" }, { "lastTransitionTime": "2026-08-27T12:03:17Z", "message": "", "reason": "Skipped", "status": "True", "type": "TenantCollectorsPipelineProcessed" }, { "lastTransitionTime": "2026-08-27T12:03:17Z", "message": "", "reason": "Skipped", "status": "True", "type": "ManagedCollectorsPipelineProcessed" }, { "lastTransitionTime": "2026-08-27T12:03:17Z", "message": "", "reason": "Skipped", "status": "True", "type": "TenantPipelineProcessed" }, { "lastTransitionTime": "2026-08-27T12:03:17Z", "message": "", "reason": "Progressing", "status": "False", "type": "ManagedPipelineProcessed" } ], "expirationTime": "2026-09-03T12:03:17Z", "managedPipelineAttempts": [ { "pipelineRun": "ex-registry-sh-managed-30dc1cf3/managed-8gb2s", "roleBindings": { "tenantRoleBinding": "ex-registry-sh-30dc1cf3/snapshot-sample-30dc1cf3-b9m29-rolebinding-for-release-pipvdkr9" }, "startTime": "2026-08-27T12:03:17Z", "status": "Progressing" } ], "managedProcessing": { "pipelineRun": "ex-registry-sh-managed-30dc1cf3/managed-8gb2s", "roleBindings": { "tenantRoleBinding": "ex-registry-sh-30dc1cf3/snapshot-sample-30dc1cf3-b9m29-rolebinding-for-release-pipvdkr9" }, "startTime": "2026-08-27T12:03:17Z" }, "startTime": "2026-08-27T12:03:17Z", "target": "ex-registry-sh-managed-30dc1cf3", "validation": { "time": "2026-08-27T12:03:17Z" } } } + RELEASEPLAN_PATH=ea199593-c727-4951-b3d6-3dda672d161e/release_plan.json + echo -n ea199593-c727-4951-b3d6-3dda672d161e/release_plan.json + get-resource releaseplan ex-registry-sh-30dc1cf3/source-releaseplan + tee /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e/release_plan.json { "apiVersion": "appstudio.redhat.com/v1alpha1", "kind": "ReleasePlan", "metadata": { "creationTimestamp": "2026-08-27T12:03:17Z", "generation": 1, "labels": { "originating-tool": "push-to-external-registry-self-hosted-quay", "release.appstudio.openshift.io/author": "kubernetes-admin", "release.appstudio.openshift.io/auto-release": "true", "release.appstudio.openshift.io/releasePlanAdmission": "demo", "release.appstudio.openshift.io/standing-attribution": "true" }, "name": "source-releaseplan", "namespace": "ex-registry-sh-30dc1cf3", "resourceVersion": "8011", "uid": "e8542b61-f4a0-46c5-a4b6-a28c19127741" }, "spec": { "application": "appstudio", "releaseGracePeriodDays": 7, "target": "ex-registry-sh-managed-30dc1cf3" }, "status": { "conditions": [ { "lastTransitionTime": "2026-08-27T12:03:17Z", "message": "", "reason": "Matched", "status": "True", "type": "Matched" } ], "releasePlanAdmission": { "active": true, "name": "ex-registry-sh-managed-30dc1cf3/demo" } } } + RELEASEPLANADMISSION_PATH=ea199593-c727-4951-b3d6-3dda672d161e/release_plan_admission.json + echo -n ea199593-c727-4951-b3d6-3dda672d161e/release_plan_admission.json + get-resource releaseplanadmission ex-registry-sh-managed-30dc1cf3/demo + tee /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e/release_plan_admission.json { "apiVersion": "appstudio.redhat.com/v1alpha1", "kind": "ReleasePlanAdmission", "metadata": { "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"appstudio.redhat.com/v1alpha1\",\"kind\":\"ReleasePlanAdmission\",\"metadata\":{\"annotations\":{},\"labels\":{\"originating-tool\":\"push-to-external-registry-self-hosted-quay\"},\"name\":\"demo\",\"namespace\":\"ex-registry-sh-managed-30dc1cf3\"},\"spec\":{\"applications\":[\"appstudio\"],\"data\":{\"mapping\":{\"components\":[{\"name\":\"dc-metro-map\",\"repositories\":[{\"url\":\"quay-service.quay/test-org/released-dc-metro-map\"}]}],\"defaults\":{\"public\":true,\"pushSourceContainer\":false,\"tags\":[\"latest\"]},\"registrySecret\":\"quay-api-token\"}},\"origin\":\"ex-registry-sh-30dc1cf3\",\"pipeline\":{\"pipelineRef\":{\"ociStorage\":\"quay-service.quay/test-org/trusted-artifacts\",\"params\":[{\"name\":\"url\",\"value\":\"https://github.com/konflux-ci/release-service-catalog\"},{\"name\":\"revision\",\"value\":\"aaefd74d0479b0b0e3e7d136c891d59fec58e372\"},{\"name\":\"pathInRepo\",\"value\":\"pipelines/managed/push-to-external-registry/push-to-external-registry.yaml\"}],\"resolver\":\"git\"},\"serviceAccountName\":\"release-service-account\",\"timeouts\":{\"pipeline\":\"4h0m0s\",\"tasks\":\"4h0m0s\"}},\"policy\":\"ex-registry-sh-policy-30dc1cf3\"}}\n" }, "creationTimestamp": "2026-08-27T12:03:16Z", "generation": 1, "labels": { "originating-tool": "push-to-external-registry-self-hosted-quay", "release.appstudio.openshift.io/block-releases": "false" }, "name": "demo", "namespace": "ex-registry-sh-managed-30dc1cf3", "resourceVersion": "8012", "uid": "00502a7c-511e-42e1-b445-56c059d3a9f2" }, "spec": { "applications": [ "appstudio" ], "data": { "mapping": { "components": [ { "name": "dc-metro-map", "repositories": [ { "url": "quay-service.quay/test-org/released-dc-metro-map" } ] } ], "defaults": { "public": true, "pushSourceContainer": false, "tags": [ "latest" ] }, "registrySecret": "quay-api-token" } }, "origin": "ex-registry-sh-30dc1cf3", "pipeline": { "pipelineRef": { "ociStorage": "quay-service.quay/test-org/trusted-artifacts", "params": [ { "name": "url", "value": "https://github.com/konflux-ci/release-service-catalog" }, { "name": "revision", "value": "aaefd74d0479b0b0e3e7d136c891d59fec58e372" }, { "name": "pathInRepo", "value": "pipelines/managed/push-to-external-registry/push-to-external-registry.yaml" } ], "resolver": "git" }, "serviceAccountName": "release-service-account", "timeouts": { "pipeline": "4h0m0s", "tasks": "4h0m0s" } }, "policy": "ex-registry-sh-policy-30dc1cf3" }, "status": { "conditions": [ { "lastTransitionTime": "2026-08-27T12:03:17Z", "message": "", "reason": "Matched", "status": "True", "type": "Matched" } ], "releasePlans": [ { "active": true, "name": "ex-registry-sh-30dc1cf3/source-releaseplan" } ], "retryInfo": { "enabled": false, "reason": "pipeline not configured for retries" } } } + RELEASESERVICECONFIG_PATH=ea199593-c727-4951-b3d6-3dda672d161e/release_service_config.json + echo -n ea199593-c727-4951-b3d6-3dda672d161e/release_service_config.json + get-resource releaseserviceconfig release-service/release-service-config + tee /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e/release_service_config.json { "apiVersion": "appstudio.redhat.com/v1alpha1", "kind": "ReleaseServiceConfig", "metadata": { "creationTimestamp": "2026-08-27T11:59:56Z", "generation": 1, "labels": { "konflux.konflux-ci.dev/component": "release", "konflux.konflux-ci.dev/owner": "konflux-release-service" }, "name": "release-service-config", "namespace": "release-service", "ownerReferences": [ { "apiVersion": "konflux.konflux-ci.dev/v1alpha1", "blockOwnerDeletion": true, "controller": true, "kind": "KonfluxReleaseService", "name": "konflux-release-service", "uid": "4733fc0d-913f-4211-b1c0-90d5ca5b83cd" } ], "resourceVersion": "5816", "uid": "78a22a50-8081-49a6-91d8-e26d21a42c43" }, "spec": { "debug": false } } Fetching Snapshot Spec + echo -e '\nFetching Snapshot Spec' + SNAPSHOTSPEC_PATH=ea199593-c727-4951-b3d6-3dda672d161e/snapshot_spec.json + echo -n ea199593-c727-4951-b3d6-3dda672d161e/snapshot_spec.json + get-resource snapshot ex-registry-sh-30dc1cf3/snapshot-sample-30dc1cf3 '{.spec}' + jq '(if (.componentGroup == null or .componentGroup == "") then .componentGroup = .application else . end) | del(.application)' + tee /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e/snapshot_spec.json { "artifacts": {}, "components": [ { "containerImage": "quay-service.quay/test-org/dcmetromap@sha256:544259be8bcd9e6a2066224b805d854d863064c9b64fa3a87bfcd03f5b0f28e6", "name": "dc-metro-map", "source": { "git": { "revision": "d49914874789147eb2de9bb6a12cd5d150bfff92", "url": "https://github.com/redhat-appstudio-qe/dc-metro-map-release" } } } ], "componentGroup": "appstudio" } ++ get-resource snapshot ex-registry-sh-30dc1cf3/snapshot-sample-30dc1cf3 '{.metadata.labels}' + labels='{"appstudio.openshift.io/application":"appstudio","appstudio.openshift.io/component":"dc-metro-map","originating-tool":"push-to-external-registry-self-hosted-quay","pac.test.appstudio.openshift.io/event-type":"push","test.appstudio.openshift.io/type":"component"}' ++ jq -r '."appstudio.openshift.io/build-pipelinerun" // ""' + BUILD_ID= + echo -n '' + tee /tekton/results/snapshotBuildId + echo -e '\nGenerating collectors data' Generating collectors data ++ get-resource release ex-registry-sh-30dc1cf3/snapshot-sample-30dc1cf3-b9m29 '{.status.collectors}' + collectors_status='{}' + echo '***collectors status' + echo '{}' + echo '***' ***collectors status {} *** ++ jq -c ' def deepmerge(a; b): reduce b[] as $item (a; reduce ($item | keys_unsorted[]) as $key (.; $item[$key] as $val | ($val | type) as $type | .[$key] = if ($type == "object") then deepmerge({}; [if .[$key] == null then {} else .[$key] end, $val]) elif ($type == "array") then (.[$key] + $val | unique) else $val end) ); # Ensure we safely handle missing collectors (.? // {}) as $collectors | # Flatten and combine the managed and tenant sections [($collectors.managed? // {} | to_entries | map(.value)) + ($collectors.tenant? // {} | to_entries | map(.value))] | flatten | deepmerge({}; .) ' ***collectors + collectors_result='{}' + echo '***collectors' + jq {} *** Fetching merged data json + echo '***' + echo -e '\nFetching merged data json' ++ get-resource release ex-registry-sh-30dc1cf3/snapshot-sample-30dc1cf3-b9m29 '{.spec.data}' + release_result='{}' ++ get-resource releaseplan ex-registry-sh-30dc1cf3/source-releaseplan '{.spec.data}' + release_plan_result='{}' ++ get-resource releaseplanadmission ex-registry-sh-managed-30dc1cf3/demo '{.spec.data}' + release_plan_admission_result='{"mapping":{"components":[{"name":"dc-metro-map","repositories":[{"url":"quay-service.quay/test-org/released-dc-metro-map"}]}],"defaults":{"public":true,"pushSourceContainer":false,"tags":["latest"]},"registrySecret":"quay-api-token"}}' ++ merge-json '{}' '{}' + merged_output='{}' ++ merge-json '{}' '{}' + merged_output='{}' ++ merge-json '{}' '{"mapping":{"components":[{"name":"dc-metro-map","repositories":[{"url":"quay-service.quay/test-org/released-dc-metro-map"}]}],"defaults":{"public":true,"pushSourceContainer":false,"tags":["latest"]},"registrySecret":"quay-api-token"}}' + merged_output='{"mapping":{"components":[{"name":"dc-metro-map","repositories":[{"url":"quay-service.quay/test-org/released-dc-metro-map"}]}],"defaults":{"public":true,"pushSourceContainer":false,"tags":["latest"]},"registrySecret":"quay-api-token"}}' + DATA_PATH=ea199593-c727-4951-b3d6-3dda672d161e/data.json + echo -n ea199593-c727-4951-b3d6-3dda672d161e/data.json + echo '{"mapping":{"components":[{"name":"dc-metro-map","repositories":[{"url":"quay-service.quay/test-org/released-dc-metro-map"}]}],"defaults":{"public":true,"pushSourceContainer":false,"tags":["latest"]},"registrySecret":"quay-api-token"}}' + tee /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e/data.json {"mapping":{"components":[{"name":"dc-metro-map","repositories":[{"url":"quay-service.quay/test-org/released-dc-metro-map"}]}],"defaults":{"public":true,"pushSourceContainer":false,"tags":["latest"]},"registrySecret":"quay-api-token"}} ++ jq -c .spec.pipeline.pipelineRef /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e/release_plan_admission.json + pipelineref='{"ociStorage":"quay-service.quay/test-org/trusted-artifacts","params":[{"name":"url","value":"https://github.com/konflux-ci/release-service-catalog"},{"name":"revision","value":"aaefd74d0479b0b0e3e7d136c891d59fec58e372"},{"name":"pathInRepo","value":"pipelines/managed/push-to-external-registry/push-to-external-registry.yaml"}],"resolver":"git"}' ++ jq -r '.resolver // ""' + resolver=git + '[' git == git ']' ++ jq -r '.params[] | select(.name=="url") | .value' + url=https://github.com/konflux-ci/release-service-catalog ++ jq -r '.params[] | select(.name=="revision") | .value' + revision=aaefd74d0479b0b0e3e7d136c891d59fec58e372 ++ jq -r '.params[] | select(.name=="pathInRepo") | .value' + pathinrepo=pipelines/managed/push-to-external-registry/push-to-external-registry.yaml + orgrepo=konflux-ci/release-service-catalog ++ echo konflux-ci/release-service-catalog ++ cut -f1 -d/ + org=konflux-ci ++ echo konflux-ci/release-service-catalog ++ cut -f2 -d/ ++ cut -d. -f1 + repo=release-service-catalog ++ curl -s https://api.github.com/repos/konflux-ci/release-service-catalog/commits/aaefd74d0479b0b0e3e7d136c891d59fec58e372 ++ jq -r '.sha // ""' + sha=aaefd74d0479b0b0e3e7d136c891d59fec58e372 + org=konflux-ci + repo=release-service-catalog + revision=aaefd74d0479b0b0e3e7d136c891d59fec58e372 Release Pipeline Ref Info: -------------------------- + pathinrepo=pipelines/managed/push-to-external-registry/push-to-external-registry.yaml + sha=aaefd74d0479b0b0e3e7d136c891d59fec58e372 + echo '' + echo 'Release Pipeline Ref Info:' + echo -------------------------- ++ jq -n -c --arg org konflux-ci --arg repo release-service-catalog --arg revision aaefd74d0479b0b0e3e7d136c891d59fec58e372 --arg pathinrepo pipelines/managed/push-to-external-registry/push-to-external-registry.yaml --arg sha aaefd74d0479b0b0e3e7d136c891d59fec58e372 '$ARGS.named' + json='{"org":"konflux-ci","repo":"release-service-catalog","revision":"aaefd74d0479b0b0e3e7d136c891d59fec58e372","pathinrepo":"pipelines/managed/push-to-external-registry/push-to-external-registry.yaml","sha":"aaefd74d0479b0b0e3e7d136c891d59fec58e372"}' + echo '{"org":"konflux-ci","repo":"release-service-catalog","revision":"aaefd74d0479b0b0e3e7d136c891d59fec58e372","pathinrepo":"pipelines/managed/push-to-external-registry/push-to-external-registry.yaml","sha":"aaefd74d0479b0b0e3e7d136c891d59fec58e372"}' + jq . { "org": "konflux-ci", "repo": "release-service-catalog", "revision": "aaefd74d0479b0b0e3e7d136c891d59fec58e372", "pathinrepo": "pipelines/managed/push-to-external-registry/push-to-external-registry.yaml", "sha": "aaefd74d0479b0b0e3e7d136c891d59fec58e372" } ++ jq -r '.singleComponentMode // "false"' /var/workdir/release/ea199593-c727-4951-b3d6-3dda672d161e/data.json + SINGLE_COMPONENT_MODE=false ++ echo ex-registry-sh-30dc1cf3/snapshot-sample-30dc1cf3 ++ cut -f2 -d/ + SNAPSHOT_NAME=snapshot-sample-30dc1cf3 ++ echo ex-registry-sh-30dc1cf3/snapshot-sample-30dc1cf3 ++ cut -f1 -d/ + SNAPSHOT_NAMESPACE=ex-registry-sh-30dc1cf3 + echo -n false + tee /tekton/results/singleComponentMode + echo -n snapshot-sample-30dc1cf3 + tee /tekton/results/snapshotName + echo -n ex-registry-sh-30dc1cf3 + tee /tekton/results/snapshotNamespace falsesnapshot-sample-30dc1cf3ex-registry-sh-30dc1cf3