如何获取在serverless.yml
中引用“堆栈输出”的堆栈?
例如:
我知道,如果我尝试从堆栈A 中排除资源A ,我将收到一条消息错误,指出堆栈B 使用了资源A 。
因此应该存在一种列出它们(引荐来源网址)的方法。
执行时:
$ serverless info --stage prod --verbose
返回堆栈输出。.但是我想知道是否也可以获取引荐来源网址。
谢谢!
答案 0 :(得分:0)
根据documentation,您可以将输出部分作为列表项放在资源下:
DiscoveryDocumentRequest discoveryDocument = null;
if (Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT") == EnvironmentName.Development)
{
discoveryDocument = new DiscoveryDocumentRequest()
{
Address = "http://myurl:5000",
Policy = {
RequireHttps = false,
Authority = "http://myurl:5000",
ValidateEndpoints = false
},
};
}
else
{
discoveryDocument = new DiscoveryDocumentRequest()
{
Address = "http://myurl:5000",
Policy = {
RequireHttps = false,
Authority = "https://myurl",
ValidateEndpoints = false
},
};
}
var disco = await httpClient.GetDiscoveryDocumentAsync(discoveryDocument);
注意:文档中有一个小错误,请不要忘记在CognitoUserPoolId下缩进“ Value”。
更新:
这可能是另一个选择,每个部分都在单独的文件中。确保以 Resources 开始资源文件,以 Outputs 开始输出文件。
serverless.yml
resources:
- Resources:
ApiGatewayRestApi:
Type: AWS::ApiGateway::RestApi
- ${file(resources/first-cf-resources.yml)}
- ${file(resources/second-cf-resources.yml)}
- Outputs:
CognitoUserPoolId:
Value:
Ref: CognitoUserPool
resources.yml
...
resources:
- ${file(resources.yml)}
- ${file(outputs.yml)}
outputs.yml
Resources:
CognitoUserPool:
Type: AWS::Cognito::UserPool
Properties:
UserPoolName: my-user-pool
AutoVerifiedAttributes:
- phone_number