Commit d9f2b8fa authored by Marton Hunyady's avatar Marton Hunyady Committed by Commit Bot

Add new policy values for DeviceRollbackToTargetVersion policy

The new values are:
- RollbackAndRestoreIfPossible: always roll back, but try to save and
  restore data if possible.
- RollbackWithRestoreOnly: only roll back if it's possible to save and
  restore data.

Bug: 878736
Change-Id: I0455ee4c38537430cb27a86befe51d09d6e312ef
Reviewed-on: https://chromium-review.googlesource.com/1194124Reviewed-by: default avatarZentaro Kavanagh <zentaro@chromium.org>
Reviewed-by: default avatarPavol Marko <pmarko@chromium.org>
Commit-Queue: Marton Hunyady <hunyadym@chromium.org>
Cr-Commit-Position: refs/heads/master@{#587605}
parent ee17c1de
...@@ -246,12 +246,30 @@ message AutoUpdateSettingsProto { ...@@ -246,12 +246,30 @@ message AutoUpdateSettingsProto {
// No value set. Default is ROLLBACK_DISABLED. // No value set. Default is ROLLBACK_DISABLED.
ROLLBACK_UNSPECIFIED = 0; ROLLBACK_UNSPECIFIED = 0;
// No rollback should happen if |target_version_prefix| specifies an older // No rollback should happen if |target_version_prefix| specifies an older
// version than the currently installed Chrome OS version. // version than the currently installed Chrome OS version. If this is the
// case, the device will still respect |target_version_prefix|, so it will
// not update Chrome OS.
ROLLBACK_DISABLED = 1; ROLLBACK_DISABLED = 1;
// If |target_version_prefix| specifies an older version than the currently // If |target_version_prefix| specifies an older version than the currently
// installed Chrome OS version, the device should roll back to a Chrome OS // installed Chrome OS version, the device should roll back to a Chrome OS
// version starting with |target_version_prefix|. // version starting with |target_version_prefix|. The device does a full
// powerwash during the rollback, including TPM reset.
ROLLBACK_WITH_FULL_POWERWASH = 2; ROLLBACK_WITH_FULL_POWERWASH = 2;
// If |target_version_prefix| specifies an older version than the currently
// installed Chrome OS version, the device should roll back to a Chrome OS
// version starting with |target_version_prefix|.
// If possible, the device tries to carry over device-level configuration
// including network credentials during the rollback process.
// If that is not possible, rolls back with a full powerwash.
ROLLBACK_AND_RESTORE_IF_POSSIBLE = 3;
// If |target_version_prefix| specifies an older version than the currently
// installed Chrome OS version and it's possible to carry over device-level
// configuration such as network credentials during the rollback process
// and skipping OOBE after the rollback, the device rolls back to a Chrome
// OS version starting with |target_version_prefix|.
// If this is not possible, the device will stay on the current version
// (same as ROLLBACK_DISABLED).
ROLLBACK_WITH_RESTORE_ONLY = 4;
} }
// Specifies what should happen if |target_version_prefix| specifies an older // Specifies what should happen if |target_version_prefix| specifies an older
......
...@@ -6691,7 +6691,7 @@ ...@@ -6691,7 +6691,7 @@
'type': 'int-enum', 'type': 'int-enum',
'schema': { 'schema': {
'type': 'integer', 'type': 'integer',
'enum': [ 1, 2 ], 'enum': [ 1, 2, 3, 4 ],
}, },
'items': [ 'items': [
{ {
...@@ -6704,6 +6704,18 @@ ...@@ -6704,6 +6704,18 @@
'value': 2, 'value': 2,
'caption': '''Roll back and stay on target version if OS version is newer than target. Do a full powerwash during the process.''', 'caption': '''Roll back and stay on target version if OS version is newer than target. Do a full powerwash during the process.''',
}, },
{
'name': 'RollbackAndRestoreIfPossible',
'value': 3,
'caption': '''Roll back and stay on target version if OS version is newer than target. Try to carry over device-level configuration (including network credentials) through the rollback process, if possible, but do the rollback with full powerwash even if restoring the data is not possible (because the target version doesn't support restoring data or because of a backward-incompatible change).
Supported on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 70 and higher. For older clients, this value means that rollback is disabled.''',
},
{
'name': 'RollbackWithRestoreOnly',
'value': 4,
'caption': '''Roll back and stay on target version if OS version is newer than target and it's possible to carry over device-level configuration (including network credentials) through rollback, also skipping OOBE after rollback. Don't do or abort rollback if that's not possible (because the target version doesn't support restoring data or because of a backward-incompatible change).
Supported on <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> version 70 and higher. For older clients, this value means that rollback is disabled.''',
},
], ],
'supported_on': ['chrome_os:67-'], 'supported_on': ['chrome_os:67-'],
'device_only': True, 'device_only': True,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment