全部, 我的剧本快要准备好了。只有带有别名的最后一行才给我问题。我试图查看我在yaml语法检查器中做错了什么,但仍然找不到它。任何线索我在做什么错?我尝试转义正斜线,但还是没有运气:(
我很难找到一般的语法错误。因此,感谢您发现问题的任何线索。
tasks:
- name: Create a KMS key for using the aws cli
command: 'aws kms create-key --profile="{{ aws_profile }}" --region="{{ aws_region }}"'
register: newkeydetails
- name: Display the values for the variable output
set_fact: newkeydetails="{{ newkeydetails.stdout | from_json }}"
- name: Display the value of keyid
debug:
msg: "{{ newkeydetails.KeyMetadata.KeyId }}"
- name: Create a alias name for KMS key using the aws cli
command: 'aws kms create-alias --alias-name 'alias/anothernewkeydetailskey' --target-key-id '"{{ newkeydetails.KeyMetadata.KeyId }}"' --profile="{{ aws_profile }}" --region="{{ aws_region }}"'
答案 0 :(得分:1)
出现此问题的原因是由于最后一行使用了单引号,因为它们没有转义,从而导致解析错误。
有效的解决方案涉及删除不必要的引号,从而导致以下结果:
'aws kms create-alias --alias-name "alias/anothernewkeydetailskey" --target-key-id "{{ newkeydetails.KeyMetadata.KeyId }}" --profile="{{ aws_profile }}" --region="{{ aws_region }}"