diff options
author | Daniil Baturin <daniil@baturin.org> | 2018-12-31 14:30:46 +0100 |
---|---|---|
committer | Daniil Baturin <daniil@baturin.org> | 2018-12-31 14:30:46 +0100 |
commit | 77d7e727faa5725735fd2b7742722a3f7f71d52f (patch) | |
tree | a29deba34f6ea07434886b2c86051cd45e40d04b /src/migration-scripts | |
parent | fc5f75c23fa3c7f93e982433705ab8971dbbabff (diff) | |
parent | d50524722819582cc1d7ad289d12e9f585f701de (diff) | |
download | vyos-1x-77d7e727faa5725735fd2b7742722a3f7f71d52f.tar.gz vyos-1x-77d7e727faa5725735fd2b7742722a3f7f71d52f.zip |
Merge branch 'current' into crux
Diffstat (limited to 'src/migration-scripts')
-rwxr-xr-x | src/migration-scripts/quagga/2-to-3 | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/migration-scripts/quagga/2-to-3 b/src/migration-scripts/quagga/2-to-3 index 99d96a0aa..4c1cd86a3 100755 --- a/src/migration-scripts/quagga/2-to-3 +++ b/src/migration-scripts/quagga/2-to-3 @@ -178,6 +178,23 @@ else: for peer_group in peer_groups: migrate_neighbor(config, peer_group_path, peer_group) + ## Migrate redistribute statements + redistribute_path = ['protocols', 'bgp', asn, 'redistribute'] + if config.exists(redistribute_path): + config.set(bgp_path + af_path + ['redistribute']) + + redistributes = config.list_nodes(redistribute_path) + for redistribute in redistributes: + config.set(bgp_path + af_path + ['redistribute', redistribute]) + if config.exists(redistribute_path + [redistribute, 'metric']): + redist_metric = config.return_value(redistribute_path + [redistribute, 'metric']) + config.set(bgp_path + af_path + ['redistribute', redistribute, 'metric'], value=redist_metric) + if config.exists(redistribute_path + [redistribute, 'route-map']): + redist_route_map = config.return_value(redistribute_path + [redistribute, 'route-map']) + config.set(bgp_path + af_path + ['redistribute', redistribute, 'route-map'], value=redist_route_map) + + config.delete(redistribute_path) + try: with open(file_name, 'w') as f: f.write(config.to_string()) |