Как написать сложный тип в формате JSON с помощью OCI CLI?

Я пытаюсь обновить экземпляр вычисления в oci cli, но команда ниже:

oci compute instance update --instance-id=ocid1.instance.oc1.eu-frankfurt-1.aaaaaa... --defined-tags '{"data":{"launch-options":{"firmware":"UEFI_64"}}}'

приводит к этой ошибке:

ServiceError: {"code": "Неверный запрос", "message": "Значения тега должны быть строками", "opc-request-id": "7B645B7F3D3F4047BE04E39DD6F4CCCA/8904CFD298C5E9F34AF032AF079EB84A/F627FF4010F095011011015015015015015011015011015011015011015

Как правильно отформатировать значение моего тега?

2 ответа

После того, как я провел некоторые дополнительные тесты, основанные на вводе @user3291073, я нашел правильное решение: сначала вы должны создать пространство имен тегов и определение ключа тега, а затем обратиться к существующему пространству имен тегов и определению ключа тега в Опция -defined-tags. Так что для моего предыдущего примера это будет работать с существующим пространством имен тегов launch-options с определением ключа тега firmware:

oci compute instance update --instance-id=ocid1.instance.oc1.eu-frankfurt-1.aaaaaa... --defined-tags '{"launch-options":{"firmware":"UEFI_64"}}'

В настоящее время строки являются единственным поддерживаемым типом данных для определенных тегов: https://docs.cloud.oracle.com/iaas/Content/Identity/Concepts/taggingoverview.htm

Таким образом, вы можете сделать только что-то вроде:--defined-tags '{"tag_name_1": "tag_value_1"}'

Другие вопросы по тегам