#!/usr/bin/env python
# Copyright (c) 2014 Arista Networks, Inc.  All rights reserved.
# Arista Networks, Inc. Confidential and Proprietary.

# Usage: ConfigureReplace [ --sysname <sysname> ] --url <url>
# Replace current configuration of the system from the specified source, ignoring
# errors.

import argparse
import Tac
import Tracing

traceHandle = Tracing.Handle( 'CliSession' )
t0 = traceHandle.trace0
   
if __name__ == '__main__':
   parser = argparse.ArgumentParser( description='Replace current '
                                                 'configuration of the system' )
   parser.add_argument( '--sysname', help='sysname', dest='sysname', default='ar' )
   parser.add_argument( '--url', help='Source URL', dest='url', required=True )
   args = parser.parse_args()

   sysname = args.sysname
   url = args.url

   t0( 'Executing Configure replace with sysname:', sysname, ', url:', url )

   # This only works with CliServer or ConfigAgent
   Tac.run( [ 'CliShell', '--sysname', sysname, '-A', '-p', '15', '-c',
              'configure replace %s ignore-errors' % url ] )
