Несколько узлов TagSet не работают в aws cli - PullRequest
0 голосов
/ 14 января 2019

Согласно aws cli put-bucket-tagging doc, я могу выполнить следующую команду

aws s3api put-bucket-tagging --bucket my-bucket --tagging file://tagging.json

с tagging.json файл (случай 1)

{
   "TagSet": [
     {
       "Key": "organization",
       "Value": "marketing"
     }
   ]
}

Предположим, что мой tagging.json файл содержит несколько TagSet узлов, подобных (case 2)

{  
   "TagSet":[  
      {  
         "Key":"organization",
         "Value":"marketing"
      }
   ],
   "TagSet":[  
      {  
         "Key":"test",
         "Value":"market"
      }
   ]
}

В этом случае aws cli анализирует только первый TagSet узел, который аналогичен узлу case 1 . Так что вопрос

  1. Как я могу проанализировать несколько TagSet узлов или протестировать такие запросы с помощью s3.
  2. Что такое поведение s3, если в теле запроса есть несколько TagSet узлов. Что-то вроде
<Tagging>
  <TagSet>
     <Tag>
       <Key>Tag Name</Key>
       <Value>Tag Value</Value>
     </Tag>
  </TagSet>
  <TagSet>
     <Tag>
       <Key>Tag Name2</Key>
       <Value>Tag Value2</Value>
     </Tag>
  </TagSet>
</Tagging>

1 Ответ

0 голосов
/ 14 января 2019

Чтобы ответить на ваш вопрос о нескольких узлах TagSet, я думаю, что синтаксис файла должен быть примерно таким:

{  
   "TagSet":[  
      {  
         "Key":"organization",
         "Value":"marketing"
      },
      {  
         "Key":"test",
         "Value":"market"
      }
   ]
}

Для TagSet требуется один ключ, содержащий список тегов Key / Value, чтобы AWS мог их правильно проанализировать, поскольку несколько ключей TagSet в структуре JSON выглядят так, будто AWS принимает первый и отбрасывает все после.

...