Files
infra-backup/wsl/scripts/delete_project_resources.sh
2026-02-23 12:47:42 +06:00

39 lines
1.4 KiB
Bash

#! bin/bash
while read PROJECT_NAME; do
PROJECT_ID=$(openstack project show "$PROJECT_NAME" -f value -c id 2>/dev/null)
if [ -z "$PROJECT_ID" ]; then
echo "Project not found: $PROJECT_NAME"
continue
fi
echo "Cleaning project: $PROJECT_NAME ($PROJECT_ID)"
openstack server list --project $PROJECT_ID -f value -c ID | xargs -r openstack server delete
openstack floating ip list --project $PROJECT_ID -f value -c ID | xargs -r openstack floating ip delete
RID=$(openstack router list --project $PROJECT_ID -f value -c ID)
subnet=$(openstack subnet list --project $PROJECT_ID -f value -c ID)
openstack router remove subnet "$RID" "$subnet"
openstack router list --project $PROJECT_ID -f value -c ID | xargs -r openstack router unset --external-gateway
openstack router list --project $PROJECT_ID -f value -c ID | xargs -r openstack router delete
openstack port list --project $PROJECT_ID -f value -c ID | xargs -r openstack port delete
openstack subnet list --project $PROJECT_ID -f value -c ID | xargs -r openstack subnet delete
openstack network list --project $PROJECT_ID -f value -c ID | xargs -r openstack network delete
openstack volume list --project $PROJECT_ID -f value -c ID | xargs -r openstack volume delete
openstack security group list --project $PROJECT_ID -f value -c ID | xargs -r openstack security group delete
done < project_list.txt