...
This issue is likely to occur, if the environment has undergone aSLU (Skip Level Upgrade) and the enable patch of VC or NSXT is tried withthe AP tool . 2022-10-18 06:08:04.729 [INFO ] Updating telemetry details of operation: ENABLE_ASYNC_PATCH2022-10-18 06:08:04.736 [INFO ] Added operation ENABLE_ASYNC_PATCH and its status FAILURE to async patch tool metrics2022-10-18 06:08:04.769 [INFO ] Successfully updated telemetry details of operation: ENABLE_ASYNC_PATCH2022-10-18 06:08:04.769 [ERROR] Error while initiating required functionality: ENABLE_ASYNC_PATCH2022-10-18 06:08:04.784 [ERROR] POST_CHECKS_FAILED-- Error Message: Failures found during AP Tool postchecks - [Post enable patch check failed due to upgradable status is incorrect for bundle .Upgradable status should be AVAILABLE.]-- Remedy: Please refer to AP tool and LCM logs for further debugging. Contact GSS if issue persists.Exception in thread "main" com.vmware.evo.sddc.lcm.model.error.LcmException: Failures found during AP Tool postchecks - [Post enable patch check failed due to upgradable status is incorrect for bundle. Upgradable status should be AVAILABLE.] at com.vmware.evo.sddc.lcm.tools.asyncpatch.PostCheck.checkUpgradableStatus(PostCheck.java:318) at com.vmware.evo.sddc.lcm.tools.asyncpatch.PostCheck.doPostchecks(PostCheck.java:117) at com.vmware.evo.sddc.lcm.tools.asyncpatch.PostCheck$$FastClassBySpringCGLIB$$28128a32.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89) at com.vmware.vcf.featuretoggle.aspect.FeatureToggleAspect.trace(FeatureToggleAspect.java:39) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634) at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624) at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708) at com.vmware.evo.sddc.lcm.tools.asyncpatch.PostCheck$$EnhancerBySpringCGLIB$$6dc00a0d.doPostchecks(<generated>) at com.vmware.evo.sddc.lcm.tools.asyncpatch.AsyncPatchEnabler.enablePatches(AsyncPatchEnabler.java:153) at com.vmware.evo.sddc.lcm.tools.asyncpatch.AsyncPatchWorkflowComposer.executeActionsBasedOnSpec(AsyncPatchWorkflowComposer.java:125) at com.vmware.evo.sddc.lcm.tools.asyncpatch.AsyncPatchWorkflowComposerHelper.executeActionsBasedOnInputSpec(AsyncPatchWorkflowComposerHelper.java:124) at com.vmware.evo.sddc.lcm.tools.asyncpatch.EnablePatchHelper.enablePatches(EnablePatchHelper.java:115) at com.vmware.evo.sddc.lcm.tools.asyncpatch.AsyncPatchToolMain.process(AsyncPatchToolMain.java:243) at com.vmware.evo.sddc.lcm.tools.asyncpatch.AsyncPatchToolConfig.main(AsyncPatchToolConfig.java:198
If the user tries to enable patch after SLU(Skip Level Upgrade) for VC/NSXT with the ap tool versions less than 1.0.0.5 , the bundle(VC/NSXT) may not become available due to an issue with the version of ESX added in the Software Compatibility Sets file . In order to overcome this issue, The work around is provided to unblock the users to make the bundle available .
During the SLU , there will be some sets of aliases added for the ESX . During enable patch with the AP tool, We construct software compatibility sets file , which LCM used to calculate the bundle applicability .Since these aliases are not honored due to a bug in the AP tool , the constructed software compatibility sets file will not make the bundle AVAILABLE for upgrade .
This issue will be fixed in future releases.
Until the fix is released users are requested to apply the below workaround steps :Step 1.Copy the softwareCompatibilitySets from/nfs/vmware/vcf/nfs-mount/bundle to /nfs/vmware/vcf/nfs-mount/bundle/depot/localStep 2 .Find the compat set entry below: a. If the bundle is VC , find the entry in the file with the VC version as "upgrade to version" of VC bundle and the current(or base version from Alias file) of NSXT and current version of ESX . b. If the bundle is NSXT, find the entry in the file with the NSXT version as "upgrade to version" of NSXT bundle and the current(or base version from Alias file) of VC and current version of ESX . Step 3.Check in the alias file /opt/vmware/vcf/lcm-app/conf/VersionAlias.yml for any aliases of ESX(with current version). Step 4.Modify the SCS file and add the base version of ESX in the file. Step 5.chmod 777 /nfs/vmware/vcf/nfs-mount/bundle/depot/local/softwareCompatibilitySets.jsonStep 6.curl -X PUT http://localhost/lcm/bundle/upload/compatibilitySets -H "Content-Type: application/json"