@@ -456,14 +456,19 @@ func determineUpgradeVersionDirectories(ctx *log.Context, extensionEvents *exten
456456 upgradeToVersion := os .Getenv (constants .VersionEnvName )
457457 extensionVersionValue := os .Getenv (constants .ExtensionVersionEnvName )
458458 updatingFromVersionValue := os .Getenv (constants .ExtensionVersionUpdatingFromEnvName )
459- upgradeType := "upgrade"
460459
461- // First, we need to determine if this is an upgrade or a downgrade
462- // This is a downgrade if the updating from version is equal to the version
460+ // In some WALA versions, there is a bug where on downgrade it will send the same value for upgradeToVersion and upgradeFromVersion
461+ // Newer versions will send the correct value for upgradeToVersion
462+ // Therefore:
463+ // Action | Old WALA | New WALA
464+ // ---------------------------------------------------| -------------------------------------
465+ // Downgrade | upgradeToVersion == upgradeFromVersion | upgradeToVersion < upgradeFromVersion
466+ // ------------------------------------------------------------------------------------------
467+ // Upgrade | upgradeToVersion > upgradeFromVersion | upgradeToVersion > upgradeFromVersion
468+ // ------------------------------------------------------------------------------------------
463469 if upgradeToVersion == updatingFromVersionValue {
464- // This is a downgrade
470+ // This is a downgrade. We therefore need to use the extension version
465471 upgradeFromVersion = extensionVersionValue
466- upgradeType = "downgrade"
467472 } else {
468473 // This is an upgrade
469474 upgradeFromVersion = updatingFromVersionValue
@@ -479,7 +484,7 @@ func determineUpgradeVersionDirectories(ctx *log.Context, extensionEvents *exten
479484 upgradeToVersionDirectory = strings .ReplaceAll (extensionDirectory , upgradeFromVersion , upgradeToVersion )
480485 }
481486
482- msg := fmt .Sprintf ("determineUpgradeVersionDirectories: %s from='%s' to='%s'" , upgradeType , upgradeToVersionDirectory , upgradeFromVersionDirectory )
487+ msg := fmt .Sprintf ("determineUpgradeVersionDirectories: move from='%s' to='%s'" , upgradeToVersionDirectory , upgradeFromVersionDirectory )
483488 ctx .Log ("message" , msg )
484489 extensionEvents .LogInformationalEvent ("determineUpgradeVersions" , msg )
485490
0 commit comments