38 lines
919 B
Bash
38 lines
919 B
Bash
#!/usr/bin/env bash
|
|
# Remove a Pangolin resource by name
|
|
set -euo pipefail
|
|
|
|
RESOURCE_NAME=""
|
|
|
|
while [[ $# -gt 0 ]]; do
|
|
case $1 in
|
|
--resource-name) RESOURCE_NAME="$2"; shift 2 ;;
|
|
*) echo "Unknown arg: $1"; exit 1 ;;
|
|
esac
|
|
done
|
|
|
|
API="${PANGOLIN_API_URL}/v1"
|
|
AUTH="Authorization: Bearer ${PANGOLIN_API_KEY}"
|
|
|
|
echo "→ Pangolin delete: ${RESOURCE_NAME}"
|
|
|
|
RESOURCE_ID=$(curl -sf \
|
|
-H "${AUTH}" \
|
|
"${API}/org/${PANGOLIN_ORG_ID}/resources?limit=1000" \
|
|
| jq -r --arg name "${RESOURCE_NAME}" \
|
|
'.data.resources[] | select(.name == $name) | .resourceId' \
|
|
|| echo "")
|
|
|
|
if [[ -z "${RESOURCE_ID}" ]]; then
|
|
echo " No resource found with name '${RESOURCE_NAME}', skipping."
|
|
exit 0
|
|
fi
|
|
|
|
echo " Found resource ${RESOURCE_ID}, deleting…"
|
|
|
|
curl -sf -X DELETE \
|
|
-H "${AUTH}" \
|
|
"${API}/resource/${RESOURCE_ID}" \
|
|
> /dev/null
|
|
|
|
echo "✓ Resource ${RESOURCE_ID} (${RESOURCE_NAME}) removed from Pangolin" |