create a full file
Signed-off-by: GnomeZworc <nicolas.boufidjeline@g3e.fr>
This commit is contained in:
parent
9baec034b2
commit
0a4ed4a156
9 changed files with 56 additions and 0 deletions
56
agent.sh
Normal file
56
agent.sh
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
#!/bin/bash
|
||||
|
||||
function start_vm {
|
||||
[[ -f ./libs/shflags ]] && . ./libs/shflags || eval "$(curl --silent https://git.g3e.fr/H6N/tools/raw/branch/main/libs/shflags)"
|
||||
|
||||
DEFINE_string 'interface' 'eno1' 'KVM Interface' 'i'
|
||||
DEFINE_string 'vxlan_id' '-' 'VXLAN ID' 'v'
|
||||
DEFINE_string 'gateway_ip' '-' 'Gatewat IP' 'g'
|
||||
DEFINE_string 'network' '-' 'Network IP' 'n'
|
||||
DEFINE_string 'netmask' '-' 'Network Mask' 'e'
|
||||
DEFINE_string 'vpc_name' '-' 'VPC NAME' 'c'
|
||||
DEFINE_string 'subnet_name' '-' 'SUBNET NAME' 's'
|
||||
DEFINE_string 'vm_name' '-' 'VM NAME' 'm'
|
||||
DEFINE_string 'vm_ip' '-' 'VM CIDR' 'p'
|
||||
DEFINE_boolean 'dryrun' false 'Enable dry-run mode' 'd'
|
||||
|
||||
FLAGS "$@" || exit $?
|
||||
eval set -- "${FLAGS_ARGV}"
|
||||
|
||||
#bash agent.sh StartVm -c vpc-00000 -s subnet-00000 -v 12 -g 240.0.0.1 -n 240.0.0.0 -e 16 -m i-00000 -p 240.0.1.1
|
||||
local local_ip=$(ip a show dev ${FLAGS_interface} | grep 'inet ' | sed -e 's/ */ /g' |cut -d\ -f 3|cut -d\/ -f1)
|
||||
local gateway_ip="${FLAGS_gateway_ip}/32"
|
||||
local subnet="${FLAGS_network}/${FLAGS_netmask}"
|
||||
local vm_ip="${FLAGS_vm_ip}/${FLAGS_netmask}"
|
||||
|
||||
echo "Create vm"
|
||||
echo "kvm:"
|
||||
echo " interface name: ${FLAGS_interface}"
|
||||
echo " interface ip: ${local_ip}"
|
||||
echo "subnet:"
|
||||
echo " vpc: ${FLAGS_vpc_name}"
|
||||
echo " vxlan: ${FLAGS_vxlan_id}"
|
||||
echo " name: ${FLAGS_subnet_name}"
|
||||
echo " gateway: ${gateway_ip}"
|
||||
echo " network: ${subnet}"
|
||||
echo "vm:"
|
||||
echo " name: ${FLAGS_vm_name}"
|
||||
echo " ip: ${vm_ip}"
|
||||
echo " tap: to generate"
|
||||
}
|
||||
|
||||
function main {
|
||||
fonction="${1}"
|
||||
shift 1
|
||||
|
||||
case "${fonction}" in
|
||||
"StartVm")
|
||||
start_vm "$@"
|
||||
;;
|
||||
*)
|
||||
echo "action : ${fonction} not known !"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Loading…
Add table
Add a link
Reference in a new issue