<p>我相信基于您提供的代码示例,您不可能得到这样的响应。在</p>
<p>我想你可能试过<code>TemplateBody</code>而不是{<cd2>}?在</p>
<p>要重现错误消息,请尝试以下简单示例:</p>
<pre class="lang-python prettyprint-override"><code>#!/usr/bin/env python
import boto3
import ast
parameter_file = 'parameters.json'
client = boto3.client('cloudformation')
with open(parameter_file, 'r') as infile:
parameters = ast.literal_eval(infile.read())
response = client.create_stack(
StackName='TestStack',
TemplateBody='file://cloudformation.yml',
Parameters=parameters
)
</code></pre>
<p>如果将参数文件和模板放在预期的位置并运行此程序,则应该会看到您看到的确切错误消息:</p>
^{pr2}$
<p>请注意,此错误:</p>
<blockquote>
<p>Template format error: unsupported structure</p>
</blockquote>
<p>来自<a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html" rel="nofollow noreferrer">AWS API</a>,不是Boto3。在</p>
<p>将<a href="https://en.wikipedia.org/wiki/File_URI_scheme" rel="nofollow noreferrer">file:// URI</a>或URL传递到TemplateBody参数时会导致此错误。在</p>
<p>此外,我相信如果您真的向TemplateURL传递了任何信息,就不可能得到这样的响应。在</p>
<p>另请参见:</p>
<ul>
<li><a href="https://stackoverflow.com/q/41992569/3787051">this</a>相关答案,用于使用awscli重新生成此错误消息。在</li>
<li><a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html" rel="nofollow noreferrer">API docs</a>其中记录了TemplateBody和TemplateURL。在</li>
</ul>