simplify trc6500-master-file packaging
[debian6500.git] / master / opt / script / configure_switch.tcl
CommitLineData
b3f3562f
OL
1#!/usr/bin/expect
2
3# ============================================================================
4#
5# Copyright (C) THALES. All rights reserved
6# Author: Laurent Mazet
7#
8# Script de configuration du switchs
9#
10# 2013-10-10 V1.0 : Creation
11#
12# ============================================================================
13
14set host [lrange $argv 0 0]
15if { $host == "" } {
3a8d2b2f 16 puts "usage: configure_switch.tcl \[sw1|sw2|swg1|swg2|swm\]"
b3f3562f
OL
17 exit 1
18}
19
20set tftpserver ""
21if { $host == "swg1" } { set tftpserver "10.133.26.160" }
22if { $host == "swg2" } { set tftpserver "10.133.26.160" }
23if { $host == "swm" } { set tftpserver "10.133.28.160" }
8a1c6cff
OL
24if { $host == "sw1" } { set tftpserver "10.133.26.160" }
25if { $host == "sw2" } { set tftpserver "10.133.26.160" }
b3f3562f
OL
26if { $tftpserver == "" } { puts "unknown switch '$host'"; exit }
27
28set date [ exec date +%Y%m%d-%H:%m:%S ]
29set backup "$host-$date.txt"
30
31spawn telnet $host
32
33set timeout 30
34
35expect {
36 "Password:" { send "thales\r" }
37 incorrect { send_user "invalid password or account\n"; exit 1 }
38 timeout { send_user "connection to $host timed out\n"; exit 1 }
39 eof { send_user "connection to host failed\n"; exit 1 }
40}
41expect -exact ">" { send "enable\r" }
42expect "Password:" { send "thales\r" }
43expect "#" { send "copy running-config tftp://$tftpserver/$backup\r" }
44expect -exact "?" { send "$tftpserver\r" }
45expect -exact "?" { send "$backup\r" }
46expect "#" { send "copy tftp://$tftpserver/$host.txt startup-config\r" }
47expect -exact "?" { send "startup-config\r" }
48#expect "#" { send_user " << reload or exit ? >> "; interact }
49expect "#" { send "reload\r" }
50
51exit 0
52# vim:set tabstop=4 expandtab shiftwidth=4: