2017-08-10 133 views
-1

我想爲AWS Lambda的s3同步執行awscli。 當我使用./aws我獲得以下錯誤 (「狀態:失敗」,127,「S3,./aws:沒有這樣的文件或目錄\ n」)從AWS Lambda運行awscli

即使使用全路徑嘗試,但仍然有錯誤: - ( '狀態:失敗',127, 'S3,/Library/Frameworks/Python.framework/Versions/2.7/bin/aws:沒有這樣的文件或目錄 ')我被困在這部分

。這裏的任何建議都會有幫助。 謝謝!

+0

如果我沒有記錯,一切都可以用AWS CLI做可以通過boto3做(其實,當你看看源代碼,你可以看到,CLI僅僅是boto3接口),所以有一個原因是你想通過cli而不是使用boto3,因爲這是它最終會使用反正(你可以通過在這裏查看代碼來確認這一點:https://github.com/aws/aws-cli/blob /develop/awscli/clidriver.py)?它比使用cli更高效,可能比嘗試安裝awscli並在lambda中實現錯誤處理更容易。 – JPope2014

回答

0

AWS CLI未安裝在AWS Lambda上,因此無法正常使用。

由於AWS CLI只是一個Python包,因此如果您將Python用作運行庫,則可以將其作爲部署包的一部分上載。

+0

我已經安裝並上傳了awscli軟件包,但仍然出現此錯誤。 – RAcharya

+0

即使嘗試使用aws的完整路徑,但仍然是相同的錯誤:('狀態:失敗',127,'s3:/Library/Frameworks/Python.framework/Versions/2.7/bin/aws:沒有這樣的文件或目錄 ') – RAcharya

+0

那麼,你當然必須使用正確的路徑。你使用的那個顯然是不正確的。 – Dunedan

1

我建議使用在AWS Lambda中實現的AWS SDK。有了這個,您可以訪問S3和許多其他AWS服務。

儘量顯得here編程在Python

其他的SDK可以發現here。 請記住,您可以使用支持的Lambda語言。

+0

我正在使用Python子進程的awscli。 – RAcharya