ECSのtask definitionで複数フィールドでクエリしたいとき
jqのドキュメントと照らし合わせながら見つけました
方法
以下のようにやれば、taskDefinitionArn
とcontainerDefinitions
が両方取れます。
もっといい方法がある気もしますが、、
$ aws ecs describe-task-definition --task-definition task \
--query 'taskDefinition | {
taskDefinitionArn: taskDefinitionArn,
containerDefinitions: containerDefinitions
}'
{
"taskDefinitionArn": "arn:aws:ecs:ap-northeast-1:xxxxx:task-definition/task:12",
"containerDefinitions": [
{
--- 略 ---
配列ぽくとりたいとき
aws ecs describe-task-definition --task-definition task --query 'taskDefinition | [taskDefinitionArn, containerDefinitions]'
おまけ
もともと以下のようにtaskDefinitionを取得してgithub actionsに突っ込んでいたのですが、 resource is not in the state servicesStable
というエラーが出ていました。
$ aws ecs describe-task-definition --task-definition task \
--query taskDefinition
以下のようにクエリすることで回避できました。
$ aws ecs describe-task-definition --task-definition task \
--query 'taskDefinition |
{
ipcMode: ipcMode,
executionRoleArn: executionRoleArn,
containerDefinitions: containerDefinitions,
placementConstraints: placementConstraints,
memory: memory,
taskRoleArn: taskRoleArn,
family: family,
pidMode: pidMode,
requiresCompatibilities: requiresCompatibilities,
networkMode: networkMode,
cpu: cpu,
inferenceAccelerators: inferenceAccelerators,
proxyConfiguration: proxyConfiguration,
volumes: volumes
}' > task-definition.json
Author And Source
この問題について(ECSのtask definitionで複数フィールドでクエリしたいとき), 我々は、より多くの情報をここで見つけました https://qiita.com/greenteabiscuit/items/c1f4c4c42304297c0f12著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .