Skip to content

Instantly share code, notes, and snippets.

@jewzaam
Last active December 6, 2019 14:29
Show Gist options
  • Save jewzaam/b51c0ec1c0de896cdd0ba0434bfebb5d to your computer and use it in GitHub Desktop.
Save jewzaam/b51c0ec1c0de896cdd0ba0434bfebb5d to your computer and use it in GitHub Desktop.
Script to scrape OCP API to get all groups + resources + verbs
#!/bin/bash
# /api
GROUP=""
for VERSION in `oc get --raw /api | jq -r .versions[] | sort`;
do
echo "- apiGroups:"
echo " - $GROUP"
for RESOURCE in `oc get --raw /api/${VERSION} | jq -r .resources[].name | sort`;
do
echo " resources:"
echo " - $RESOURCE"
echo " verbs:"
for VERB in `oc get --raw /api/${VERSION} | jq -r ".resources[] | select(.name == \"$RESOURCE\") | .verbs[]" | sort`;
do
echo " - $VERB"
done
done
done
# /apis
for GROUP in `oc get --raw /apis | jq -r .groups[].name | sort`;
do
echo "- apiGroups:"
echo " - $GROUP"
for VERSION in `oc get --raw /apis/${GROUP} | jq -r .versions[].version | sort`;
do
for RESOURCE in `oc get --raw /apis/${GROUP}/${VERSION} | jq -r .resources[].name | sort`;
do
echo " resources:"
echo " - $RESOURCE"
echo " verbs:"
for VERB in `oc get --raw /apis/${GROUP}/${VERSION} | jq -r ".resources[] | select(.name == \"$RESOURCE\") | .verbs[]" | sort`;
do
echo " - $VERB"
done
done
done
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment