1

AWS Lambdaのgoogledrive認証情報に問題があります。ローカルマシン上の機能、すべてが仕事ですが、私はラムダ関数のエラーファイルfile.pyでAWS LAMBDA "errorMessage": "[Errno 30]読み取り専用ファイルシステム: 'drive-python-quickstart.json'"

"errorMessage": "[Errno 30] Read-only file system: 'drive-python-quickstart.json'", 
"errorType": "OSError", 
    "stackTrace": [ 
    [ 
     "/var/task/lambda_function.py", 
     33, 
     "lambda_handler", 
     "pageSize=10,fields=\"nextPageToken, files(id, name)\").execute()" 
    ], 
    [ 
     "/var/task/oauth2client/_helpers.py", 
     133, 
     "positional_wrapper", 
     "return wrapped(*args, **kwargs)" 
    ], 
    [ 
     "/var/task/googleapiclient/http.py", 
     835, 
     "execute", 
     "method=str(self.method), body=self.body, headers=self.headers)" 
    ], 
    [ 
     "/var/task/googleapiclient/http.py", 
     162, 
     "_retry_request", 
     "resp, content = http.request(uri, method, *args, **kwargs)" 
    ], 
    [ 
     "/var/task/oauth2client/transport.py", 
     186, 
     "new_request", 
     "credentials._refresh(orig_request_method)" 
    ], 
    [ 
     "/var/task/oauth2client/client.py", 
     761, 
     "_refresh", 
     "self._do_refresh_request(http)" 
    ], 
    [ 
     "/var/task/oauth2client/client.py", 
     802, 
     "_do_refresh_request", 
     "self.store.locked_put(self)" 
    ], 
    [ 
     "/var/task/oauth2client/file.py", 
     79, 
     "locked_put", 
     "f = open(self._filename, 'w')" 
    ] 
    ] 
} 

を持つ〜の30分後にAWSでのzipファイルを展開した後、私はこのコードを持っている:

def locked_put(self, credentials): 
    """Write Credentials to file. 
    Args: 
     credentials: Credentials, the credentials to store. 
    Raises: 
     IOError if the file is a symbolic link. 
    """ 
    self._create_file_if_needed() 
    _helpers.validate_file(self._filename) 
    f = open(self._filename, 'w') 
    f.write(credentials.to_json()) 
    f.close() 

def locked_delete(self): 
    """Delete Credentials file. 
    Args: 
     credentials: Credentials, the credentials to store. 
    """ 
    os.unlink(self._filename) 

私はf = open(self._filename、 'w')を 'r'に設定しようとしましたが、助けにならないかもしれません。提案してください。

答えて

3

明らかに許可されていないファイルを書き込もうとしています。 Lambdaは現在、/ tmpディレクトリへのファイルの書き込みのみをサポートしています。

+0

ありがとう、私はそれを修正! – Andrej

+0

あなたはそれをどのように修正したか教えてください。私は今この問題に直面しています - @Andrej –

+0

私はすべての信用状ファイルを.zip ant set targetに置いてプロジェクトディレクトリに置きます。 – Andrej

関連する問題