Hi there, Can you please tell me the procedure of migrating the web2py app in AWS Lamda or provide me a link that you are following ??
On Saturday, September 8, 2018 at 12:30:28 PM UTC+5, [email protected] wrote: > > I am trying to migrate my Web2Py app from Heroku to AWS Lambda, using > Zappa. I can get it to start running, but I'm running into errors because > web2py is trying to write to the filesystem: > > > [Errno 30] Read-only file system: '/var/task/deposit': OSError > Traceback (most recent call last): > File "/var/task/handler.py", line 574, in lambda_handler > return LambdaHandler.lambda_handler(event, context) > File "/var/task/handler.py", line 244, in lambda_handler > handler = cls() > File "/var/task/handler.py", line 150, in __init__ > import gluon.main > File "/var/task/gluon/main.py", line 64, in <module> > create_missing_folders() > File "C:\web2py\gluon\admin.py", line 460, in create_missing_folders > File "C:\web2py\gluon\admin.py", line 454, in try_mkdir > OSError: [Errno 30] Read-only file system: '/var/task/deposit'. > > So I commented out the following functions from gluon/main.py > > create_missing_app_folders() > and > create_missing_folders() > > > However, now I'm getting stuck with the DB trying to create tables: > > > [ERROR] 2018-09-08T07:05:35.270Z 905ef1e6-b335-11e8-816d-07b31200db80 > Traceback (most recent call last): > File "/var/task/gluon/restricted.py", line 219, in restricted > exec(ccode, environment) > File "/var/task/applications/ads/models/db.py", line 72, in <module> > session.connect(request, response, db=db) > File "C:\web2py\gluon\globals.py", line 946, in connect > File "/var/task/gluon/packages/dal/pydal/base.py", line 587, in > define_table > table = self.lazy_define_table(tablename, *fields, **args) > File "/var/task/gluon/packages/dal/pydal/base.py", line 621, in > lazy_define_table > polymodel=polymodel) > File "/var/task/gluon/packages/dal/pydal/adapters/base.py", line 797, in > create_table > return self.migrator.create_table(*args, **kwargs) > File "/var/task/gluon/packages/dal/pydal/migrator.py", line 275, in > create_table > query), table) > File "/var/task/gluon/packages/dal/pydal/migrator.py", line 483, in log > logfile = self.file_open(table._loggername, 'ab') > File "/var/task/gluon/packages/dal/pydal/migrator.py", line 491, in > file_open > fileobj = portalocker.LockedFile(filename, mode) > File "C:\web2py\gluon\packages\dal\pydal\contrib\portalocker.py", line > 185, in __init__ > File "C:\web2py\gluon\packages\dal\pydal\contrib\portalocker.py", line > 170, in open_file > IOError: [Errno 2] No such file or directory: > '/var/task/applications/ads/databases/sql.log' > > > Is this a never-ending rabbit hole or is there a way to tell web2py that > it cannot write to the filesystem. I tried > global_setttings.web2py_runtime_gae=True > > but that causes a bunch of other problems because GAE resources are not > present. > > I'd love to get this on AWS Lambda because my application can have > temporary 1000x spikes in traffic and Serverless lets me handle this > without ops and without paying for idle server time in the evenings. > > If I can get this working I will post a deployment recipe. > > Thanks, > -Mike > > -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.

