【发布时间】:2020-08-01 01:18:24
【问题描述】:
在某些时候将堆栈部署到 AWS 时出现错误,并且部署失败并回滚。在堆栈的控制台事件窗格中,Logical ID 字段中的第一个错误状态为FancyStuffCustomS31,原因是Failed to create resource. Access point ARN region is empty 和状态CREATE_FAILED。
我没有像这样定义任何 S3 存储桶,所以我假设它是由无服务器框架创建的。于是我偷窥.serverless目录,得到如下sn-p:
"FancyStuffCustomS31": {
"Type": "Custom::S3",
"Version": 1,
"DependsOn": [
"FancyStuffLambdaFunction",
"CustomDashresourceDashexistingDashs3LambdaFunction"
],
"Properties": {
"ServiceToken": {
"Fn::GetAtt": [
"CustomDashresourceDashexistingDashs3LambdaFunction",
"Arn"
]
},
"FunctionName": "funstufftest-dev-FancyStuff",
"BucketName": {
"Fn::GetAtt": [
"binRepo",
"Arn"
]
},
"BucketConfigs": [
{
"Event": "s3:ObjectCreated:*",
"Rules": []
}
]
}
},
(难怪我的 Lambda 函数叫FancyStuff)
我猜它在某个时候会尝试创建一个访问该 S3 存储桶的访问点以上传代码,而不是指定 arn 中的区域,但并不确定。
尝试从头开始删除和重新创建堆栈、更改名称等。
目前我使用的唯一插件是serverless-sam。这些是我的版本:
$ sls version
Framework Core: 1.77.0
Plugin: 3.6.18
SDK: 2.3.1
Components: 2.33.0
$ npm version
{
npm: '6.14.7',
ares: '1.15.0',
brotli: '1.0.7',
cldr: '36.0',
http_parser: '2.9.3',
icu: '65.1',
llhttp: '2.0.4',
modules: '72',
napi: '5',
nghttp2: '1.40.0',
node: '12.16.2',
openssl: '1.1.1e',
tz: '2019c',
unicode: '12.1',
uv: '1.34.2',
v8: '7.8.279.23-node.34',
zlib: '1.2.11'
}
【问题讨论】:
-
能否将 serverless.yml 文件的内容添加到问题中?
标签: amazon-web-services amazon-s3 serverless-framework serverless