Skopeo failure in air-gapped installation script
After you mirror your images, the air-gapped installation script uses skopeo list-tags
to gather tags for each olm-catalog
image. The tags are encoded such that the tags can determine which image is the latest and tag it
(if appropriate). If you cannot get a version of Skopeo that supports list-tags
(any version of Skopeo after 1.0), you can manually tag the latest catalogs.
Symptom
Running the air-gapped installation script after all of the images are mirrored results in the following error message:
Prerequisite Result
Client skopeo CLI must meet the following regex: skopeo version 1.d*.d* false
Required prereqs. result: FAILED
error: Parsing the actions prereqs faiiled
Solution
To manually tag the latest catalogs without Skopeo, edit the offline cache in the *-images.csv
files and manually change the tags to latest
before mirroring. For example, you can edit the ibm-cp-common-services-1.3.2-images.csv
file in the offline directory, find the olm-catalog
entries, then edit the latest tag to latest
. Each row in the CSV file adheres to the following structure:
registry,image_name,tag,digest,mtype,os,arch,variant,insecure,digest_source,image_type,groups
Replace the value of tag with latest
as in the following example.
Before replacing values:
docker.io,ibmcom/ibm-common-service-catalog,v3.7.2-20210325.000000-000000000,sha256:b20aae26ee6fa864c6e9595c3d8cdf9b9d8390fbe8f63769e74bf93fafb95d4b,LIST,"","","",0,CASE,olm-catalog,""
docker.io,ibmcom/ibm-common-service-catalog,v3.7.2-20210325.000000-000000000-linux.amd64,sha256:36695dac219270144e80ccf67ca49b95b537ac3959b5652e8a6d783169931db1,IMAGE,linux,amd64,"",0,CASE,olm-catalog,"
docker.io,ibmcom/ibm-common-service-catalog,v3.7.2-20210325.000000-000000000-linux.ppc64le,sha256:ca343191cdcb9ceb80b68b5095579881254f637878eadb743bc122002c591749,IMAGE,linux,ppc64le,"",0,CASE,olm-catalog,""
docker.io,ibmcom/ibm-common-service-catalog,v3.7.2-20210325.000000-000000000-linux.s390x,sha256:a377820194c0d1258555425b55d30238d0dc99f9ca9bd423abb74ea32e404092,IMAGE,linux,s390x,"",0,CASE,olm-catalog,""
After replacing values:
docker.io,ibmcom/ibm-common-service-catalog,latest,sha256:b20aae26ee6fa864c6e9595c3d8cdf9b9d8390fbe8f63769e74bf93fafb95d4b,LIST,"","","",0,CASE,olm-catalog,""
docker.io,ibmcom/ibm-common-service-catalog,latest-linux.amd64,sha256:36695dac219270144e80ccf67ca49b95b537ac3959b5652e8a6d783169931db1,IMAGE,linux,amd64,"",0,CASE,olm-catalog,"
docker.io,ibmcom/ibm-common-service-catalog,latest-linux.ppc64le,sha256:ca343191cdcb9ceb80b68b5095579881254f637878eadb743bc122002c591749,IMAGE,linux,ppc64le,"",0,CASE,olm-catalog,""
docker.io,ibmcom/ibm-common-service-catalog,latest-linux.s390x,sha256:a377820194c0d1258555425b55d30238d0dc99f9ca9bd423abb74ea32e404092,IMAGE,linux,s390x,"",0,CASE,olm-catalog,""