Skip to content

Commit

Permalink
[sonic-cfggen/docker-frr] Fix sonic-cfggen so docker-frr start.sh won…
Browse files Browse the repository at this point in the history
…'t fail if no WARM_RESTART in configDB

In general, instead of sonic-cfggen crashing
we print empty string if we use -v or --var-json for variables not existing

Signed-off-by: Zhenggen Xu <zxu@linkedin.com>
  • Loading branch information
zhenggen-xu committed Apr 26, 2020
1 parent e75da77 commit 15dff30
Showing 1 changed file with 12 additions and 6 deletions.
18 changes: 12 additions & 6 deletions src/sonic-config-engine/sonic-cfggen
Original file line number Diff line number Diff line change
Expand Up @@ -296,14 +296,20 @@ def main():
print(template.render(sort_data(data)))

if args.var != None:
template = jinja2.Template('{{' + args.var + '}}')
print(template.render(data))
try:
template = jinja2.Template('{{' + args.var + '}}')
print(template.render(data))
except:
print("")

if args.var_json != None and args.var_json in data:
if args.key != None:
print(json.dumps(FormatConverter.to_serialized(data[args.var_json], args.key), indent=4, cls=minigraph_encoder))
else:
print(json.dumps(FormatConverter.to_serialized(data[args.var_json]), indent=4, cls=minigraph_encoder))
try:
if args.key != None:
print(json.dumps(FormatConverter.to_serialized(data[args.var_json], args.key), indent=4, cls=minigraph_encoder))
else:
print(json.dumps(FormatConverter.to_serialized(data[args.var_json]), indent=4, cls=minigraph_encoder))
except:
print("")

if args.write_to_db:
configdb = ConfigDBConnector(**db_kwargs)
Expand Down

0 comments on commit 15dff30

Please sign in to comment.