Merge "Add a script to clean up VPP vxlan interfaces" into casablanca
diff --git a/test/vcpe/cleanvGMUX.py b/test/vcpe/cleanvGMUX.py
new file mode 100644
index 0000000..fe586fe
--- /dev/null
+++ b/test/vcpe/cleanvGMUX.py
@@ -0,0 +1,64 @@
+#! /usr/bin/python
+
+import sys
+import logging
+import requests
+import json
+from datetime import datetime
+import time
+
+gmux_ip = '10.12.6.115'
+logging.basicConfig(level=logging.DEBUG, format='%(message)s')
+logger = logging.getLogger('')
+headers = {'Content-Type': 'application/json', 'Accept': 'application/json'}
+auth = 'admin', 'admin'
+base_url = 'http://{0}:8183/restconf/config/ietf-interfaces:interfaces'.format(gmux_ip)
+
+def list_interface():
+ url = base_url
+ logger.info(url)
+ r = requests.get(url, headers=headers, auth=auth)
+ logger.debug(r)
+ response = r.json()
+
+ logger.debug('---------------------------------------------------------------')
+ logger.debug(json.dumps(response, indent=4, sort_keys=True))
+ logger.debug('---------------------------------------------------------------')
+
+def clean_gmux():
+ url = base_url
+ r = requests.get(url, headers=headers, auth=auth)
+ response = r.json()
+
+ interfaces = response.get('interfaces').get('interface')
+ for inf in interfaces:
+ name = inf.get('name')
+ if name.startswith('vxlanTun10'):
+ logger.debug('name = {0}'.format(name))
+ delete_interface_v3po_l2(name)
+
+ for inf in interfaces:
+ name = inf.get('name')
+ if name.startswith('vxlanTun10'):
+ logger.debug('name = {0}'.format(name))
+ delete_interface(name)
+
+def delete_interface_v3po_l2(interface_name):
+ url = '{0}/interface/{1}/v3po:l2'.format(base_url, interface_name)
+ r = requests.delete(url, headers=headers, auth=auth)
+ logger.debug(r)
+
+def delete_interface(interface_name):
+ url = '{0}/interface/{1}'.format(base_url, interface_name)
+ r = requests.delete(url, headers=headers, auth=auth)
+ logger.debug(r)
+
+if __name__ == '__main__':
+ logger.debug('---------------------------------------------------------------')
+ logger.debug('list interfaces before cleaning gmux')
+ list_interface()
+ clean_gmux()
+ logger.debug('---------------------------------------------------------------')
+ logger.debug('list interfaces after cleaning gmux')
+ list_interface()
+