Copyright (c) 2019-2021 by Cisco Systems, Inc. All rights reserved.
Version: 2021-07-01
module Cisco-IOS-XE-install-rpc { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XE-install-rpc"; prefix install-ios-xe-rpc; import cisco-semver { prefix cisco-semver; } organization "Cisco Systems, Inc."; contact "Cisco Systems, Inc. Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 Tel: +1 1800 553-NETS E-mail: cs-yang@cisco.com"; description "Copyright (c) 2019-2021 by Cisco Systems, Inc. All rights reserved."; revision "2021-07-01" { description "- Added optional leaf download timeout and vpn in install RPC for controller mode install workflow. - Added set-default RPC for SDWAN image workflow"; reference "3.2.0"; } revision "2021-03-01" { description "- Added one shot commit option in activate RPC. - Added issu option for applicable RPC"; reference "3.1.0"; } revision "2020-11-01" { description "Modified path length to 255"; reference "3.0.0"; } revision "2020-07-01" { description "Added install by profile type"; reference "2.0.0"; } revision "2020-03-01" { description "Initial revision"; reference "1.0.0"; } cisco-semver:module-version "3.2.0"; cisco-semver:module-version "3.1.0"; cisco-semver:module-version "3.0.0"; cisco-semver:module-version "2.0.0"; cisco-semver:module-version "1.0.0"; typedef rollback-type { type enumeration { enum "rollback-to-base" { value 0; description "Rollback to base image"; } enum "rollback-to-committed" { value 1; description "Rollback to committed image"; } enum "rollback-to-id" { value 2; description "Rollback to previous roll back id"; } enum "rollback-to-label" { value 3; description "Rollback to label"; } } description "Rollback to options"; } typedef install-type { type enumeration { enum "install-use-path" { value 0; description "Install using image path"; } enum "install-use-profile" { value 1; description "Install using profile"; } } description "Install type options"; } typedef remove-type { type enumeration { enum "remove-use-version" { value 0; description "Option to remove by image version"; } enum "remove-use-path" { value 1; description "Option to remove using image path"; } enum "remove-use-inactive" { value 2; description "Option to remove inactive image"; } enum "remove-use-profile" { value 3; description "Option to remove using profile"; } } description "Remove type options"; } typedef activate-type { type enumeration { enum "activate-use-version" { value 0; description "Option to activate using image version"; } enum "activate-use-path" { value 1; description "Option to activate using image path"; } enum "activate-use-profile" { value 2; description "Option to activate using profile"; } } description "activate type options"; } grouping controller-options { description "Controller mode options only"; leaf vpn { type uint32; description "The VPN ID is used to indicate device to select the interface for the image download"; } } // grouping controller-options grouping install { description "Install download image, installing or upgrading package and activate software image. Installs image only or allows one shot operation option to install, activate and commit image in one step action"; leaf uuid { type string; mandatory true; description "The UUID (universally unique identifier) is a string and is a textual representation of a UUID. UUID is used to uniquely identify the install action invoked via RPC and it is replayed back in the install progress notifications to correlate them back to the original install operation."; } leaf one-shot { type boolean; description "Software activate and commit in one shot"; } leaf reloadfast { when "(../one-shot = 'true')"; type boolean; description "Reload fast flag option is applicable in one shot image install request. This option allows device to reload in fast mode during image upgrade and activate in an applicable device."; } leaf issu { when "(../one-shot = 'true')"; type boolean; description "Perform one shot In Service Software Upgrade (ISSU)"; } container controller-mode-options { description "Controller mode options only"; uses install-ios-xe-rpc:controller-options; } // container controller-mode-options leaf download-timeout { type uint32; units "minutes"; description "Download timeout is used on device from initiating image download request to complete from remote repository. The image download timeout value is in minutes and in range between 1 and 1440"; } choice install-type-by-choice { mandatory true; description "Install image by choice"; leaf path { type string { length "0..256"; } mandatory true; description "Path to software image"; } leaf name { type string; mandatory true; description "Install profile is used in the wireless image upgrade workflow. Currently it is only used in EWC 9100 wireless platform for AP pre-image download using profile on device to upgrade APs in network. Profile name is string"; } } // choice install-type-by-choice } // grouping install grouping activate { description "Activate software image"; leaf uuid { type string; mandatory true; description "The UUID (universally unique identifier) is a string and is a textual representation of a UUID. UUID is used to uniquely identify the install action invoked via RPC and it is replayed back in the install progress notifications to correlate them back to the original install operation."; } leaf smuid { type uint32; description "ID for patching image"; } leaf auto-abort-timer-val { type uint32 { range "30 .. 1200"; } units "minutes"; description "Option to change default auto abort wait timer during image activate action. The timer value is in minutes and in range between 30 and 1200 minutes. Image activate will auto abort if action is not confirmed through commit."; } leaf one-shot { type boolean; description "Software activate and commit in one shot"; } leaf issu { type boolean; description "Perform activation via In Service Software Upgrade (ISSU)"; } choice activate-type-by-choice { mandatory true; description "Activate image by choice"; leaf version { type string; mandatory true; description "Image version to activate"; } leaf path { type string; mandatory true; description "Path to the software image"; } leaf name { type string; mandatory true; description "Profile name"; } } // choice activate-type-by-choice } // grouping activate grouping install-commit { description "Commit software image"; leaf uuid { type string; mandatory true; description "The UUID (universally unique identifier) is a string and is a textual representation of a UUID. UUID is used to uniquely identify the install action invoked via RPC and it is replayed back in the install progress notifications to correlate them back to the original install operation."; } } // grouping install-commit grouping remove { description "Remove software image"; leaf uuid { type string; mandatory true; description "The UUID (universally unique identifier) is a string and is a textual representation of a UUID. UUID is used to uniquely identify the install action invoked via RPC and it is replayed back in the install progress notifications to correlate them back to the original install operation."; } leaf smuid { type uint32; description "ID for patching image"; } choice remove-type-by-choice { mandatory true; description "Remove image by choice"; leaf version { type string { length "0..128"; } mandatory true; description "Image version to remove software image"; } leaf path { type string { length "0..256"; } mandatory true; description "Image path to remove software image"; } leaf inactive { type boolean; mandatory true; description "Remove inactive software image"; } leaf name { type string; mandatory true; description "Profile name to remove profile"; } } // choice remove-type-by-choice } // grouping remove grouping deactivate { description "Deactivate software image"; leaf uuid { type string; mandatory true; description "The UUID (universally unique identifier) is a string and is a textual representation of a UUID. UUID is used to uniquely identify the install action invoked via RPC and it is replayed back in the install progress notifications to correlate them back to the original install operation."; } leaf auto-abort-timer-val { type uint32 { range "30 .. 1200"; } units "minutes"; description "Option to change default auto abort wait timer during image deactivate action. The timer value is in minutes and in range between 30 and 1200 minutes. Image deactivate will auto abort if action is not confirmed through commit."; } leaf path { type string { length "0..256"; } mandatory true; description "Path to the software image"; } leaf issu { type boolean; description "Perform deactivate operation via In Service Software Upgrade (ISSU)"; } } // grouping deactivate grouping abort { description "Abort install image"; leaf uuid { type string; mandatory true; description "The UUID (universally unique identifier) is a string and is a textual representation of a UUID. UUID is used to uniquely identify the install action invoked via RPC and it is replayed back in the install progress notifications to correlate them back to the original install operation."; } leaf issu { type boolean; description "Perform abort via In Service Software Upgrade (ISSU)"; } } // grouping abort grouping auto-abort-timer { description "Option to stop auto abort timer"; leaf uuid { type string; mandatory true; description "The UUID (universally unique identifier) is a string and is a textual representation of a UUID. UUID is used to uniquely identify the install action invoked via RPC and it is replayed back in the install progress notifications to correlate them back to the original install operation."; } } // grouping auto-abort-timer grouping rollback { description "install roll back action"; leaf uuid { type string; mandatory true; description "The UUID (universally unique identifier) is a string and is a textual representation of a UUID. UUID is used to uniquely identify the install action invoked via RPC and it is replayed back in the install progress notifications to correlate them back to the original install operation."; } leaf issu { type boolean; description "ISSU rollback"; } choice rollback-type-to-choice { mandatory true; description "Rollback to choice"; leaf base { type boolean; mandatory true; description "Confirm roll back to base"; } leaf commited { type boolean; mandatory true; description "Confirm roll back"; } leaf rollback-id { type uint32; mandatory true; description "Rollback Id"; } leaf rollback-label { type string; mandatory true; description "Rollback label"; } } // choice rollback-type-to-choice } // grouping rollback grouping set-default { description "The set-default RPC sets the default image in controller mode. Controller mode supports more than one installed image and one of the images can be the assigned default image. In the event of factory reset, the device boots up using the default image"; leaf version { type string { length "0..256"; } mandatory true; description "Software image version to set as default"; } } // grouping set-default rpc install { description "Software install action command"; input { uses install-ios-xe-rpc:install; } } // rpc install rpc activate { description "Software activate action command"; input { uses install-ios-xe-rpc:activate; } } // rpc activate rpc install-commit { description "Software commit or upgrade-confirm command"; input { uses install-ios-xe-rpc:install-commit; } } // rpc install-commit rpc remove { description "Software remove action command"; input { uses install-ios-xe-rpc:remove; } } // rpc remove rpc deactivate { description "Software deactivate action command"; input { uses install-ios-xe-rpc:deactivate; } } // rpc deactivate rpc abort { description "Software abort action command"; input { uses install-ios-xe-rpc:abort; } } // rpc abort rpc auto-abort-timer { description "Option to stop auto abort timer"; input { uses install-ios-xe-rpc:auto-abort-timer; } } // rpc auto-abort-timer rpc rollback { description "Install rollback action"; input { uses install-ios-xe-rpc:rollback; } } // rpc rollback rpc set-default { description "The set-default RPC is used to set the default image in controller mode. This RPC is only applicable in controller mode. The default image will be set if this RPC executes successfully"; input { uses install-ios-xe-rpc:set-default; } } // rpc set-default } // module Cisco-IOS-XE-install-rpc
© 2023 YumaWorks, Inc. All rights reserved.