Назад | Перейти на главную страницу

Как отключить уведомление об обновлении в команде gcloud?

Я использую интерфейс командной строки Google Cloud SDK (gcloud команда), и команда отличная! Хотя я бы хотел вывести список экземпляров Google Compute Engine в формате JSON (запустив gcloud compute instances list --format json) и отфильтруйте его, используя jq JSON, команда иногда выводит сообщение ниже:

Updates are available for some Cloud SDK components.  To install
them, please run:
$ gcloud components update

Я знаю, что сообщение важно, но я хотел бы рассматривать вывод JSON как правильно сформированный. Есть ли способ подавить сообщение? Обе -q и --verbosity none вариант не сработал.

Вы можете отключить проверку обновлений с помощью следующей команды:

gcloud config set component_manager/disable_update_check true 

Однако ваш вариант использования должен по-прежнему работать с сообщением об обновлении. Вы действительно наблюдаете проблемы с парсером JSON? Ожидаемое поведение заключается в том, что вывод JSON переходит в стандартный вывод, а сообщение об обновлении переходит к стандартной ошибке.

$ gcloud compute instances list --format=json > stdout.log 2> stderr.log
$ cat stderr.log

Updates are available for some Cloud SDK components.  To install them, please run:
  $ gcloud components update

$ cat stdout.log
{
    // JSON here
    // ...
}

Это позволит вам проанализировать JSON с помощью следующего вызова:

gcloud compute instances list --format=json | python -m json.tool # substitute your tool of choice here