+ echo -n fb225217-6ad0-49ec-9db6-ae29a7a003f9 + RESULTS_DIR_PATH=results + '[' -n fb225217-6ad0-49ec-9db6-ae29a7a003f9 ']' + mkdir -p /var/workdir/release/fb225217-6ad0-49ec-9db6-ae29a7a003f9 + RESULTS_DIR_PATH=fb225217-6ad0-49ec-9db6-ae29a7a003f9/results + mkdir -p /var/workdir/release/fb225217-6ad0-49ec-9db6-ae29a7a003f9/results + echo -n fb225217-6ad0-49ec-9db6-ae29a7a003f9/results + RELEASE_PATH=fb225217-6ad0-49ec-9db6-ae29a7a003f9/release.json + echo -n fb225217-6ad0-49ec-9db6-ae29a7a003f9/release.json + get-resource release ex-registry-sh-96e18ede/snapshot-sample-96e18ede-vh9ms + tee /var/workdir/release/fb225217-6ad0-49ec-9db6-ae29a7a003f9/release.json { "apiVersion": "appstudio.redhat.com/v1alpha1", "kind": "Release", "metadata": { "creationTimestamp": "2026-08-14T14:01:05Z", "finalizers": [ "appstudio.redhat.com/release-finalizer" ], "generateName": "snapshot-sample-96e18ede-", "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-96e18ede" }, "name": "snapshot-sample-96e18ede-vh9ms", "namespace": "ex-registry-sh-96e18ede", "resourceVersion": "9717", "uid": "b293c5c9-0c42-48cc-bd5f-237d8ac7769c" }, "spec": { "gracePeriodDays": 7, "releasePlan": "source-releaseplan", "snapshot": "snapshot-sample-96e18ede" }, "status": { "attribution": { "author": "kubernetes-admin", "standingAuthorization": true }, "automated": true, "conditions": [ { "lastTransitionTime": "2026-08-14T14:01:05Z", "message": "", "reason": "Progressing", "status": "False", "type": "Released" }, { "lastTransitionTime": "2026-08-14T14:01:05Z", "message": "", "reason": "Succeeded", "status": "True", "type": "Validated" }, { "lastTransitionTime": "2026-08-14T14:01:05Z", "message": "", "reason": "Skipped", "status": "True", "type": "TenantCollectorsPipelineProcessed" }, { "lastTransitionTime": "2026-08-14T14:01:05Z", "message": "", "reason": "Skipped", "status": "True", "type": "ManagedCollectorsPipelineProcessed" }, { "lastTransitionTime": "2026-08-14T14:01:05Z", "message": "", "reason": "Skipped", "status": "True", "type": "TenantPipelineProcessed" }, { "lastTransitionTime": "2026-08-14T14:01:05Z", "message": "", "reason": "Progressing", "status": "False", "type": "ManagedPipelineProcessed" } ], "expirationTime": "2026-08-21T14:01:05Z", "managedPipelineAttempts": [ { "pipelineRun": "ex-registry-sh-managed-96e18ede/managed-pjv8w", "roleBindings": { "tenantRoleBinding": "ex-registry-sh-96e18ede/snapshot-sample-96e18ede-vh9ms-rolebinding-for-release-piplg9wk" }, "startTime": "2026-08-14T14:01:05Z", "status": "Progressing" } ], "managedProcessing": { "pipelineRun": "ex-registry-sh-managed-96e18ede/managed-pjv8w", "roleBindings": { "tenantRoleBinding": "ex-registry-sh-96e18ede/snapshot-sample-96e18ede-vh9ms-rolebinding-for-release-piplg9wk" }, "startTime": "2026-08-14T14:01:05Z" }, "startTime": "2026-08-14T14:01:05Z", "target": "ex-registry-sh-managed-96e18ede", "validation": { "time": "2026-08-14T14:01:05Z" } } } + RELEASEPLAN_PATH=fb225217-6ad0-49ec-9db6-ae29a7a003f9/release_plan.json + echo -n fb225217-6ad0-49ec-9db6-ae29a7a003f9/release_plan.json + get-resource releaseplan ex-registry-sh-96e18ede/source-releaseplan + tee /var/workdir/release/fb225217-6ad0-49ec-9db6-ae29a7a003f9/release_plan.json { "apiVersion": "appstudio.redhat.com/v1alpha1", "kind": "ReleasePlan", "metadata": { "creationTimestamp": "2026-08-14T14:01:04Z", "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-96e18ede", "resourceVersion": "9688", "uid": "9f757231-fe4d-467e-960c-99d9647b446f" }, "spec": { "application": "appstudio", "releaseGracePeriodDays": 7, "target": "ex-registry-sh-managed-96e18ede" }, "status": { "conditions": [ { "lastTransitionTime": "2026-08-14T14:01:04Z", "message": "", "reason": "Matched", "status": "True", "type": "Matched" } ], "releasePlanAdmission": { "active": true, "name": "ex-registry-sh-managed-96e18ede/demo" } } } + RELEASEPLANADMISSION_PATH=fb225217-6ad0-49ec-9db6-ae29a7a003f9/release_plan_admission.json + echo -n fb225217-6ad0-49ec-9db6-ae29a7a003f9/release_plan_admission.json + get-resource releaseplanadmission ex-registry-sh-managed-96e18ede/demo + tee /var/workdir/release/fb225217-6ad0-49ec-9db6-ae29a7a003f9/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-96e18ede\"},\"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-96e18ede\",\"pipeline\":{\"pipelineRef\":{\"ociStorage\":\"quay-service.quay/test-org/trusted-artifacts\",\"params\":[{\"name\":\"url\",\"value\":\"https://github.com/elenagerman/release-service-catalog\"},{\"name\":\"revision\",\"value\":\"34132da4347f78d17bc77b2a8c5b67e2126f4b58\"},{\"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-96e18ede\"}}\n" }, "creationTimestamp": "2026-08-14T14:01:02Z", "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-96e18ede", "resourceVersion": "9690", "uid": "0f05b335-bb1c-4d51-a30e-32e236f10bc3" }, "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-96e18ede", "pipeline": { "pipelineRef": { "ociStorage": "quay-service.quay/test-org/trusted-artifacts", "params": [ { "name": "url", "value": "https://github.com/elenagerman/release-service-catalog" }, { "name": "revision", "value": "34132da4347f78d17bc77b2a8c5b67e2126f4b58" }, { "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-96e18ede" }, "status": { "conditions": [ { "lastTransitionTime": "2026-08-14T14:01:04Z", "message": "", "reason": "Matched", "status": "True", "type": "Matched" } ], "releasePlans": [ { "active": true, "name": "ex-registry-sh-96e18ede/source-releaseplan" } ], "retryInfo": { "enabled": false, "reason": "pipeline not configured for retries" } } } + RELEASESERVICECONFIG_PATH=fb225217-6ad0-49ec-9db6-ae29a7a003f9/release_service_config.json + echo -n fb225217-6ad0-49ec-9db6-ae29a7a003f9/release_service_config.json + get-resource releaseserviceconfig release-service/release-service-config + tee /var/workdir/release/fb225217-6ad0-49ec-9db6-ae29a7a003f9/release_service_config.json { "apiVersion": "appstudio.redhat.com/v1alpha1", "kind": "ReleaseServiceConfig", "metadata": { "creationTimestamp": "2026-08-14T13:56:06Z", "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": "3c64ad5e-03fd-4368-88aa-cfd7bdbe32e3" } ], "resourceVersion": "6959", "uid": "b05138b7-5c4e-48ae-b27e-eea4c94bde9b" }, "spec": { "debug": false } } + echo -e '\nFetching Snapshot Spec' + SNAPSHOTSPEC_PATH=fb225217-6ad0-49ec-9db6-ae29a7a003f9/snapshot_spec.json + echo -n fb225217-6ad0-49ec-9db6-ae29a7a003f9/snapshot_spec.json Fetching Snapshot Spec + get-resource snapshot ex-registry-sh-96e18ede/snapshot-sample-96e18ede '{.spec}' + jq '(if (.componentGroup == null or .componentGroup == "") then .componentGroup = .application else . end) | del(.application)' + tee /var/workdir/release/fb225217-6ad0-49ec-9db6-ae29a7a003f9/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-96e18ede/snapshot-sample-96e18ede '{.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-96e18ede/snapshot-sample-96e18ede-vh9ms '{.status.collectors}' + collectors_status='{}' + echo '***collectors status' + echo '{}' ***collectors status {} *** + echo '***' ++ 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_result='{}' + echo '***collectors' + jq ***collectors {} *** Fetching merged data json + echo '***' + echo -e '\nFetching merged data json' ++ get-resource release ex-registry-sh-96e18ede/snapshot-sample-96e18ede-vh9ms '{.spec.data}' + release_result='{}' ++ get-resource releaseplan ex-registry-sh-96e18ede/source-releaseplan '{.spec.data}' + release_plan_result='{}' ++ get-resource releaseplanadmission ex-registry-sh-managed-96e18ede/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=fb225217-6ad0-49ec-9db6-ae29a7a003f9/data.json + echo -n fb225217-6ad0-49ec-9db6-ae29a7a003f9/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/fb225217-6ad0-49ec-9db6-ae29a7a003f9/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/fb225217-6ad0-49ec-9db6-ae29a7a003f9/release_plan_admission.json + pipelineref='{"ociStorage":"quay-service.quay/test-org/trusted-artifacts","params":[{"name":"url","value":"https://github.com/elenagerman/release-service-catalog"},{"name":"revision","value":"34132da4347f78d17bc77b2a8c5b67e2126f4b58"},{"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/elenagerman/release-service-catalog ++ jq -r '.params[] | select(.name=="revision") | .value' + revision=34132da4347f78d17bc77b2a8c5b67e2126f4b58 ++ jq -r '.params[] | select(.name=="pathInRepo") | .value' + pathinrepo=pipelines/managed/push-to-external-registry/push-to-external-registry.yaml + orgrepo=elenagerman/release-service-catalog ++ echo elenagerman/release-service-catalog ++ cut -f1 -d/ + org=elenagerman ++ echo elenagerman/release-service-catalog ++ cut -f2 -d/ ++ cut -d. -f1 + repo=release-service-catalog ++ curl -s https://api.github.com/repos/elenagerman/release-service-catalog/commits/34132da4347f78d17bc77b2a8c5b67e2126f4b58 ++ jq -r '.sha // ""' + sha=34132da4347f78d17bc77b2a8c5b67e2126f4b58 + org=elenagerman + repo=release-service-catalog Release Pipeline Ref Info: + revision=34132da4347f78d17bc77b2a8c5b67e2126f4b58 -------------------------- + pathinrepo=pipelines/managed/push-to-external-registry/push-to-external-registry.yaml + sha=34132da4347f78d17bc77b2a8c5b67e2126f4b58 + echo '' + echo 'Release Pipeline Ref Info:' + echo -------------------------- ++ jq -n -c --arg org elenagerman --arg repo release-service-catalog --arg revision 34132da4347f78d17bc77b2a8c5b67e2126f4b58 --arg pathinrepo pipelines/managed/push-to-external-registry/push-to-external-registry.yaml --arg sha 34132da4347f78d17bc77b2a8c5b67e2126f4b58 '$ARGS.named' + json='{"org":"elenagerman","repo":"release-service-catalog","revision":"34132da4347f78d17bc77b2a8c5b67e2126f4b58","pathinrepo":"pipelines/managed/push-to-external-registry/push-to-external-registry.yaml","sha":"34132da4347f78d17bc77b2a8c5b67e2126f4b58"}' + echo '{"org":"elenagerman","repo":"release-service-catalog","revision":"34132da4347f78d17bc77b2a8c5b67e2126f4b58","pathinrepo":"pipelines/managed/push-to-external-registry/push-to-external-registry.yaml","sha":"34132da4347f78d17bc77b2a8c5b67e2126f4b58"}' + jq . { "org": "elenagerman", "repo": "release-service-catalog", "revision": "34132da4347f78d17bc77b2a8c5b67e2126f4b58", "pathinrepo": "pipelines/managed/push-to-external-registry/push-to-external-registry.yaml", "sha": "34132da4347f78d17bc77b2a8c5b67e2126f4b58" } ++ jq -r '.singleComponentMode // "false"' /var/workdir/release/fb225217-6ad0-49ec-9db6-ae29a7a003f9/data.json + SINGLE_COMPONENT_MODE=false ++ echo ex-registry-sh-96e18ede/snapshot-sample-96e18ede ++ cut -f2 -d/ + SNAPSHOT_NAME=snapshot-sample-96e18ede ++ echo ex-registry-sh-96e18ede/snapshot-sample-96e18ede ++ cut -f1 -d/ + SNAPSHOT_NAMESPACE=ex-registry-sh-96e18ede + echo -n false + tee /tekton/results/singleComponentMode + echo -n snapshot-sample-96e18ede + tee /tekton/results/snapshotName + echo -n ex-registry-sh-96e18ede + tee /tekton/results/snapshotNamespace falsesnapshot-sample-96e18edeex-registry-sh-96e18ede