mirror of
				https://github.com/Telecominfraproject/wlan-lanforge-scripts.git
				synced 2025-10-30 18:27:53 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			68 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| usage="$0 <manager> <group-name> <endp-name-prefix>"
 | |
| if [[ x$1 = x ]]; then
 | |
|    echo "Please provide lanforge manager hostname or ip"
 | |
|    echo $usage
 | |
|    exit 1
 | |
| fi
 | |
| if [[ x$2 = x ]]; then
 | |
|    echo "Please provide a group name"
 | |
|    echo $usage
 | |
|    exit 1
 | |
| fi
 | |
| if [[ x$3 = x ]]; then
 | |
|    echo "Please provide an endpoint name prefix"
 | |
|    echo $usage
 | |
|    exit 1
 | |
| fi
 | |
| 
 | |
| # query for endpoints maching prefix
 | |
| if [ -f /tmp/endp.$$ ]; then
 | |
|    rm -f /tmp/endp.$$
 | |
| fi
 | |
| 
 | |
| ./lf_firemod.pl --mgr $1 --quiet yes --action list_endp > /tmp/endp.$$
 | |
| lines=`wc -l < /tmp/endp.$$`
 | |
| if [ $lines -lt 1 ]; then
 | |
|    echo "Unable to see any endpoints"
 | |
|    exit 1
 | |
| fi
 | |
| 
 | |
| declare -A names
 | |
| while read line; do
 | |
|    hunks=($line)
 | |
|    endp="${hunks[1]}"
 | |
|    endp=${endp/]/}
 | |
|    endp=${endp/[/}
 | |
|    if [[ $endp = D_* ]]; then
 | |
|       continue
 | |
|    fi
 | |
| 
 | |
|    # if name lacks a -A/B ending, it is prolly generic and the cx begins with CX_
 | |
|    if [[ $endp = *-A ]] || [[ $endp = *-B ]]; then
 | |
|       cxname=${endp%-A}
 | |
|       cxname=${cxname%-B}
 | |
|    else
 | |
|       cxname="CX_${endp}"
 | |
|    fi
 | |
|    if [[ $cxname = $3* ]] || [[ $cxname = CX_$3* ]]; then
 | |
|       names[$cxname]=1
 | |
|    fi
 | |
| done < /tmp/endp.$$
 | |
| 
 | |
| if [ ${#names[@]} -lt 1 ]; then
 | |
|    echo "No connections start with $3"
 | |
|    exit 1
 | |
| fi
 | |
| 
 | |
| echo "Creating group $2"
 | |
| ./lf_firemod.pl --mgr $1 --quiet 1 --cmd "add_group '$2'"
 | |
| 
 | |
| 
 | |
| for n in ${!names[@]}; do
 | |
|    echo "adding connection $n to '$2'"
 | |
|    ./lf_firemod.pl --mgr $1 --quiet 1 --cmd "add_tgcx '$2' '$n'"
 | |
| done
 | |
| 
 | |
| 
 | 
