10) rename estore3/ estore3.old
.
.
.
12) remove estore3.old

reducing downtime...



2015-09-02 16:57 GMT+02:00 Niphlod <niph...@gmail.com>:

> k, hacking....
>
>
> On Wednesday, September 2, 2015 at 3:34:43 PM UTC+2, Massimo Di Pierro
> wrote:
>>
>> I would prefer if the git clone is done locally and not on the server.
>> The reason is that I do not want to spend time setting up deployment keys.
>>
>> On Wednesday, 2 September 2015 03:09:51 UTC-5, Niphlod wrote:
>>>
>>> done already....with some twists but ready to adapt...
>>>
>>> 1) fabric is on the server, so it just git pulls (either master or a
>>> tagged revision) into temporary folder
>>> 2) DISABLED added to the running app
>>> 3) syncs repo to temp folder
>>> 4) syncs temp with running
>>> 5) restarts/reloads uwsgi
>>> 6) removes DISABLED
>>>
>>> bits missing from your workflow are copying to the server and keeping
>>> zipped revisions somewhere, but since it all comes from git, seems
>>> superflous but totally doable.
>>>
>>> On Wednesday, September 2, 2015 at 6:02:51 AM UTC+2, Massimo Di Pierro
>>> wrote:
>>>>
>>>> I would like an app that does this:
>>>>
>>>> deploy https://github.com/mdipierro/estore3 username@domain
>>>> :/home/www-data/web2py/applications/estore3
>>>>
>>>> possibly based on fabric. Definitively written in Python.
>>>>
>>>> the app "deply" should assume web2py is installed
>>>> 1) clone locally https://github.com/mdipierro/estore3
>>>> 2) zip it
>>>> 3) copy it to username@domain
>>>> :/home/www-data/web2py/applications/estore3.zip
>>>> 4) unzip it into username@domain
>>>> :/home/www-data/web2py/applications/estore3-tmp/
>>>> 5) if username@domain:/home/www-data/web2py/applications/estore3 does
>>>> not exist skip to 11)
>>>> 6) zip 
>>>> username@domain:/home/www-data/web2py/applications/estore3-<datetime>.zip
>>>> username@domain:/home/www-data/web2py/applications/estore3/*
>>>> 7) create a file 
>>>> username@domain:/home/www-data/web2py/applications/estore3/DISABLED
>>>> containing the current datetime
>>>> 8) stop the web server (apache and or nginx)
>>>> 9) copy all files and folders from estore3/ to estore3-tmp/  except
>>>> models, views, controllers, modules, sessions
>>>> 10) remove estore3/
>>>> 11) rename estore-tmp3/ as estore/
>>>> 12) restarts the web server
>>>>
>>>> There should also be an option:
>>>>
>>>> deploy -revert <datetime> username@domain
>>>> :/home/www-data/web2py/applications/estore3
>>>> that restores the content of username@domain
>>>> :/home/www-data/web2py/applications/estore3-<datetime>.zip
>>>>
>>>> should work with any git web2py app (not just estore3 which was an
>>>> example) and MUST WORK with private github repo.
>>>>
>>>> It is OK to assume that the current user has ssh keys to access both
>>>> the git repo and the remote server.
>>>>
>>>> I will pay $100 if you can send it to me in the next 2 days. Feel free
>>>> to discuss here if you understand it and think we can do this better.
>>>>
>>>> Massimo
>>>>
>>>>
>>>>
>>>> --
> 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.
>

-- 
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