summaryrefslogtreecommitdiff
path: root/src/migration-scripts
diff options
context:
space:
mode:
Diffstat (limited to 'src/migration-scripts')
-rw-r--r--src/migration-scripts/isis/0-to-120
1 files changed, 14 insertions, 6 deletions
diff --git a/src/migration-scripts/isis/0-to-1 b/src/migration-scripts/isis/0-to-1
index 052dbc8a8..3a9735d29 100644
--- a/src/migration-scripts/isis/0-to-1
+++ b/src/migration-scripts/isis/0-to-1
@@ -24,13 +24,21 @@ def migrate(config: ConfigTree) -> None:
# Nothing to do
return
- # We need a temporary copy of the config
- tmp_base = ['protocols', 'isis2']
- config.copy(base, tmp_base)
+ if not config.is_tag(base):
+ # Nothing to do
+ exit(0)
+
+ # Get IS-IS domain ID
+ domain_id = config.list_nodes(base)
+ if domain_id:
+ # We need a temporary copy of the config
+ tmp_base = ['protocols', 'isis2']
+ config.copy(base + domain_id, tmp_base)
# Now it's save to delete the old configuration
config.delete(base)
- # Rename temporary copy to new final config (IS-IS domain key is static and no
- # longer required to be set via CLI)
- config.rename(tmp_base, 'isis')
+ # Rename temporary node to new final config (IS-IS domain key is static and
+ # no longer required to be set via CLI)
+ if config.exists(tmp_base):
+ config.rename(tmp_base, 'isis')