General Page
IBM published Kubernetes/OpenShift content in packaging metadata known as a Container Application Software for Enterprises (CASE). This metadata is responsible for configuring an air gap environment, and every CASE is digitally signed. On November 4th, 2021, the public certificate information to validate the signatures will expire. This can cause failures in cloudctl case launch commands.
Important: If you operate a Red Hat® OpenShift® Container Platform cluster, you must refresh your local CASE archive cache (the output of a cloudctl case save command) with the new public certificate data after November 1st, 2021 to prevent an error in the launch command. If you do not update the offline cache data, then the cloudctl commands can fail after November 4th, 2021 and the --tolerance 1 flag must be used to bypass the error.
Important: If you operate a Red Hat® OpenShift® Container Platform cluster, you must refresh your local CASE archive cache (the output of a cloudctl case save command) with the new public certificate data after November 1st, 2021 to prevent an error in the launch command. If you do not update the offline cache data, then the cloudctl commands can fail after November 4th, 2021 and the --tolerance 1 flag must be used to bypass the error.
Updating the offline CASE cache
The offline CASE cache is the output of the cloudctl case save command. This cache contains metadata that is needed to mirror images to an offline registry. In order to refresh the local data any of the following steps can be taken. Alternatively, if the data is not refreshed, then the --tolerance 1 flag can be used with the cloudctl case launch command to bypass the observed error.
(Option 1) Resave each CASE to a new offline cache
The following command can be used to refresh a specific CASE version with the updated certificate data:
cloudctl case save -c "https://github.com/IBM/cloud-pak/raw/master/repo/case/${case_name}/${case_version}/${case_name}-${case_version}.tgz" -o ${new_offline_cache} --no-dependency
For Example :
export case_name=ibm-apiconnect
export case_version=3.0.1
cloudctl case save -c "https://github.com/IBM/cloud-pak/raw/master/repo/case/${case_name}/${case_version}/${case_name}-${case_version}.tgz" -o ${new_offline_cache} --no-dependency
OR
cloudctl case save -c "https://github.com/IBM/cloud-pak/raw/master/repo/case/ibm-apiconnect/3.0.1/ibm-apiconnect-3.0.1.tgz" -o tmp-offline-cache --no-dependency
The command can be wrapped in a for loop like the following example:
Note: this might not work for every format of saved CASE names:
export case_cache_location="/repository/offline" # replace the directory name where your tgz files located
export case_cache_refreshed="/repository/offline/refreshed" #replace where new files should saved
for i in ${case_cache_location}/*.tgz ; do
case_name="$(basename ${i} | tr -d '.[0-9]' | rev | cut -d - -f2-| rev)"
case_version="$(basename ${i} | tr -d '[a-z]-' | rev | cut -c2- | rev)"
echo ; echo "Saving ${case_name}-${case_version}.tgz" under ${case_cache_refreshed}
cloudctl case save -c "https://github.com/IBM/cloud-pak/raw/master/repo/case/${case_name}/${case_version}/${case_name}-${case_version}.tgz" -o ${case_cache_refreshed} --no-dependency
done
Once the new offline cache is built with the refreshed certificate data, the cache can be moved to the existing location and all future launch commands can proceed as normal.
(Option 2) Resave the top-level product CASE
The top level product CASE that you are interacting with can be resaved by running a cloudctl case save command against it and not skipping dependency resolution.
Note: running this command might pull dependencies that are at different version levels than what is in the offline cache. To get an exact replica of the versions in the existing cache, reference the solution that is used for saving each CASE to a new offline cache.
Reference Links
[{"Type":"MASTER","Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSCSJL","label":"IBM Cloud Pak for Applications"},"ARM Category":[{"code":"a8m0z0000001gRWAAY","label":"Cloud Pak for Apps"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"},{"Type":"MASTER","Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSHGYS","label":"IBM Cloud Pak for Data"},"ARM Category":[{"code":"a8m0z000000Goy2AAC","label":"Overview"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"},{"Type":"MASTER","Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SS8QTD","label":"IBM Cloud Pak for Integration"},"ARM Category":[{"code":"a8m0z0000001iXHAAY","label":"Components"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"},{"Type":"MASTER","Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SS2JQC","label":"IBM Cloud Pak for Automation"},"ARM Category":[{"code":"a8m0z0000001gWWAAY","label":"CloudPak4Automation Platform"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"},{"Type":"MASTER","Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSBYVB","label":"IBM Cloud Pak for Business Automation"},"ARM Category":[{"code":"a8m0z0000001gWWAAY","label":"CloudPak4Automation Platform"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"},{"Type":"MASTER","Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSFC4F","label":"IBM Cloud Pak for Multicloud Management"},"ARM Category":[{"code":"a8m0z0000001ipaAAA","label":"CloudPak4MCM"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"},{"Type":"MASTER","Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSDSDC","label":"IBM Cloud Pak for Network Automation"},"ARM Category":[{"code":"a8m0z000000brTjAAI","label":"ICP"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"},{"Type":"MASTER","Line of Business":{"code":"LOB24","label":"Security Software"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSTDPP","label":"IBM Cloud Pak for Security"},"ARM Category":[{"code":"a8m0z0000001js1AAA","label":"Openshift"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"},{"Type":"MASTER","Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSJGDOB","label":"IBM Watson AIOps"},"ARM Category":[{"code":"a8m0z0000001jFJAAY","label":"Watson AIOps"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]
Was this topic helpful?
Document Information
Modified date:
05 April 2022
UID
ibm16509564