tools/oci/push-helm-charts-artifacts.sh: detail diff when artifact mismatch
We've seen job failure where the tools/oci/push-helm-charts-artifacts.sh conclude that it can't overwrite the artifact because its content does not match already existing content in the registry (this script does that to avoid replacing a tested/pinned Sylva artifact if upstream content for a given tag unexpectedly is replaced).
Example: https://gitlab.com/sylva-projects/sylva-core/-/jobs/7036280663
`--- processing unit calico 00:04...`
``` --- processing unit calico 00:04 artifact name will be rke2-calico - processing version v3.25.001 from sylva-units values Version to check: v3.25.9001+v3.25.001 Checking if artifact oci://registry.gitlab.com/sylva-projects/sylva-core/rke2-calico:v3.25.9001_v3.25.001 exists... ► pulling artifact from registry.gitlab.com/sylva-projects/sylva-core/rke2-calico:v3.25.9001_v3.25.001The error message is not giving us enough details:
Files /tmp/rke2-calico/Chart.yaml and /tmp/tgz-1nCSJxF/rke2-calico/Chart.yaml differ
[ERROR] cannot push and sign rke2-calico because its content differs from the content of the already existing OCI artifact
This MR modifies the script to give us a full diff and let us understand what is different.
Edited by Thomas Morin