首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >AWS Lambda:层转换失败:某些目录没有执行权限;

AWS Lambda:层转换失败:某些目录没有执行权限;
EN

Stack Overflow用户
提问于 2020-09-07 22:50:26
回答 1查看 389关注 0票数 1

在为请求创建Python层时,我遇到了这个错误,如下所示:https://dev.to/razcodes/how-to-create-a-lambda-layer-in-aws-106m

我检查了这个答案:Conversion failed: Some directories do not have execute permissions。但是Windows没有chmod。即使我运行了等效的icacls,它仍然不能工作……

下面是我运行的完整命令:

代码语言:javascript
运行
复制
New-Item -ItemType Directory -Force -Path "aws-lambda-layer/lambda-layer/python/lib/python3.8/site-packages"
pip3 install requests --target "aws-lambda-layer/lambda-layer/python/lib/python3.8/site-packages"
icacls "aws-lambda-layer" /grant:r Everyone:F /t

Compress-Archive -Path "aws-lambda-layer/lambda-layer/*" -DestinationPath "aws-lambda-layer/lambda-layer.zip" -Force
icacls "aws-lambda-layer" /grant:r Everyone:F /t

$bucket = "some-bucket-name-asdf"
aws s3api create-bucket --bucket $bucket --create-bucket-configuration "LocationConstraint=us-west-2"
aws s3 cp "aws-lambda-layer/lambda-layer.zip" "s3://$bucket/lambda-layer"
aws lambda publish-layer-version --layer-name "AutoTradingLambdaLayer" --content "S3Bucket=auto-trading-lambda-layer,S3Key=lambda-layer" --compatible-runtimes "python3.8"

我也在控制台UI中执行了此操作,并得到了相同的错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-13 03:43:48

出于好奇,我在WSL2中打开了一个Ubuntu,同样的命令也能用。

代码语言:javascript
运行
复制
rm -rf tmp/
mkdir -p tmp/aws-lambda-layer/lambda-layer/python/lib/python3.8/site-packages
pip3 install requests --target "tmp/aws-lambda-layer/lambda-layer/python/lib/python3.8/site-packages"

chmod -R 755 tmp/
cd tmp/aws-lambda-layer/lambda-layer/ && zip -r lambda-layer.zip "./" && cd ../../..
chmod -R 755 tmp/

aws lambda publish-layer-version --layer-name "AutoTradingLayerV2" --zip-file fileb://tmp/aws-lambda-layer/lambda-layer/lambda-layer.zip --compatible-runtimes "python3.8"

更奇怪的是,甚至在创建了层之后。我的cdk deploy在Windows下可能会失败,但在Linux下工作得很好。

代码语言:javascript
运行
复制
2020-09-12 14:55:11 UTC-0700    dev-XXXStack    ROLLBACK_IN_PROGRESS    The following resource(s) failed to create: [XXXFunction6E68C5BD, XXXFunctionC9F0CF18, XXXFunction5D6ADE12, XXXFunction4434B1DB]. . Rollback requested by user.
2020-09-12 14:55:10 UTC-0700    XXXFunction5D6ADE12 CREATE_FAILED   Layer conversion failed: Some directories do not have execute permissions; (Service: AWSLambdaInternal; Status Code: 400; Error Code: InvalidParameterValueException; Request ID: bf5051dd-ec8a-43d3-953b-38ff5d03c27f; Proxy: null)
2020-09-12 14:55:09 UTC-0700    XXXFunction4434B1DB CREATE_FAILED   Layer conversion failed: Some directories do not have execute permissions; (Service: AWSLambdaInternal; Status Code: 400; Error Code: InvalidParameterValueException; Request ID: c7db1bbf-f460-474c-9d04-a32b6ba92d28; Proxy: null)
2020-09-12 14:55:08 UTC-0700    XXXFunction6E68C5BD CREATE_FAILED   Layer conversion failed: Some directories do not have execute permissions; (Service: AWSLambdaInternal; Status Code: 400; Error Code: InvalidParameterValueException; Request ID: 7fde3735-2273-437d-b51b-8aec83e2fb61; Proxy: null)
2020-09-12 14:55:07 UTC-0700    XXXFunctionC9F0CF18 CREATE_FAILED   Layer conversion failed: Some directories do not have execute permissions; (Service: AWSLambdaInternal; Status Code: 400; Error Code: InvalidParameterValueException; Request ID: 2c65b709-e2c9-46ea-bcc6-4a9d1f8618e6; Proxy: null)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63779926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档