Skip to content

Instantly share code, notes, and snippets.

@otherwiseguy
Created April 14, 2020 12:44
Show Gist options
  • Save otherwiseguy/3748e77ffaee85badeb43391ea1fc15b to your computer and use it in GitHub Desktop.
Save otherwiseguy/3748e77ffaee85badeb43391ea1fc15b to your computer and use it in GitHub Desktop.
Clean up routers and dependent objects
set -e
function remove_router {
router=$1
for subnet in $(openstack router show $router -c interfaces_info -f json|jq -r '.interfaces_info | .[] | .subnet_id'); do
for fip in $(openstack floating ip list --router $router -c ID -f value); do
echo Deleting floating ip $fip
openstack floating ip delete $fip &
done
wait
echo Removing subnet $subnet from router $router
openstack router remove subnet $router $subnet
echo Removing router $router
openstack router delete $router
done
}
echo Removing routers
for router in `openstack router list -c ID -f value`; do
remove_router $router &
done
wait
echo Finished removing routers
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment