Получение списка всех владельцев проекта от GCP - PullRequest
1 голос
/ 19 июня 2019

Я пытаюсь получить список всех проектов GCP в домене и владельцев проектов и экспортировать его в CSV, чтобы я мог выбросить его в лист Google.Получить список достаточно просто, но я не могу найти способ получить владельцев для каждого проекта.

1 Ответ

1 голос
/ 19 июня 2019
ROLE="roles/owner"
for PROJECT in $(\
  gcloud projects list \
  --format="value(projectId)" \
  --filter="projectId ~ something")
do
  printf "%s:\n" ${PROJECT}
  gcloud projects get-iam-policy ${PROJECT} \
  --flatten="bindings[].members[]" \
  --filter="bindings.role=${ROLE}" \
  --format="value(bindings.members)"
  printf "\n"
done

Для полноты, используя превосходный jq , который является одновременно более универсальным и, я думаю, более простым в использовании:

for PROJECT in $(\
  gcloud projects list \
  --format="value(projectId)" \
  --filter="projectId ~ something")
do
  printf "%s:\n" ${PROJECT}
  gcloud projects get-iam-policy ${PROJECT} --format="json" \
  | jq -r '.bindings[] | select(.role=="roles/owner") | .members[]'
  printf "\n"
done
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...