Hey arafay, Sorry for the delay. 

I plan to post a deployment recipe soon.  There are a lot of little gotchas 
I've had to work through.  I was able to do it successfully with Zappa 
(https://github.com/Miserlou/Zappa)

I'm working on doing it for another app and should be able to post my steps 
in the near future.


On Saturday, October 6, 2018 at 1:17:09 PM UTC-5, arafay...@gmail.com wrote:
>
> 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, appj...@gmail.com 
> 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 web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to