What is your development environment setup?

91 views
Skip to first unread message

Jaime Sangcap

unread,
Feb 23, 2017, 7:55:54 AM2/23/17
to pylons-discuss
Im just starting out with python and pyramid and Im wondering what do you guys use?

Are you using the host without VM? Vagrant? Docker?

I came from PHP and usually develop using vagrant.

Mike Orr

unread,
Feb 23, 2017, 10:21:58 AM2/23/17
to pylons-...@googlegroups.com
I just use pserve on the command line, and vim for editing.

Our staging server for bata tests is set up like the production
server, so Apache with mod_proxy going to a supervisord job running
pserve, and a remote database server. The servers are virtual now but
we don't deal with that directly, we just ssh into what looks like a
regular server.

On one production site we're using UWSGI because it has much better
performance under high load. The stack is Apachw with mod_proxy_uwsgi
going to a supervisord job running uwsgi.

We've talked about using Docker for both production and beta sites but
so far we haven't yet.
> --
> You received this message because you are subscribed to the Google Groups
> "pylons-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to pylons-discus...@googlegroups.com.
> To post to this group, send email to pylons-...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pylons-discuss/46abd0c7-0b7c-40dd-a33c-8584b5ba76ce%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.



--
Mike Orr <slugg...@gmail.com>

Oliver

unread,
Feb 23, 2017, 1:42:16 PM2/23/17
to pylons-...@googlegroups.com
My IDE consists of ubuntu, awesome wm, bash+ag+pyenv+virtualenv, git,
neovim+fzf+deoplete/jedi+neomake/pylama/pylint/pep8, pytest/xdist, ansible, lxd, docker.

The key to have a distinct, reproducible setup and deployment is to use pyenv/virtualenv, where pyenv is able to let you
run the python version you have in production. Try to freeze all used python library versions. After dev staging create
artifacts e.g. wheels and use them for CI staging, test them and release them to prod.

I consider lxd more suitable than docker to deploy a stack of (micro)services for dev staging and first integration
tests, just use ansible/lxd_container to setup and deploy a nearly production like scenario.


cheers,
Oliver
> --
> You received this message because you are subscribed to the Google Groups "pylons-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
> pylons-discus...@googlegroups.com <mailto:pylons-discus...@googlegroups.com>.
> To post to this group, send email to pylons-...@googlegroups.com <mailto:pylons-...@googlegroups.com>.
> <https://groups.google.com/d/msgid/pylons-discuss/46abd0c7-0b7c-40dd-a33c-8584b5ba76ce%40googlegroups.com?utm_medium=email&utm_source=footer>.

Thierry Florac

unread,
Feb 23, 2017, 4:21:22 PM2/23/17
to pylons-...@googlegroups.com
Currently using Debian, Awesome WM, and PyCharm as IDE with Mercurial as DVCS.
Development as well as testing and production environments are built using Buildout.
No issue...  ;)

Regards,
Thierry

2017-02-23 19:42 GMT+01:00 Oliver <die...@gmail.com>:
My IDE consists of ubuntu, awesome wm, bash+ag+pyenv+virtualenv, git,
neovim+fzf+deoplete/jedi+neomake/pylama/pylint/pep8, pytest/xdist, ansible, lxd, docker.

The key to have a distinct, reproducible setup and deployment is to use pyenv/virtualenv, where pyenv is able to let you
run the python version you have in production. Try to freeze all used python library versions. After dev staging create
artifacts e.g. wheels and use them for CI staging, test them and release them to prod.

I consider lxd more suitable than docker to deploy a stack of (micro)services for dev staging and first integration
tests, just use ansible/lxd_container to setup and deploy a nearly production like scenario.


cheers,
Oliver

On 23.02.2017 13:55, Jaime Sangcap wrote:
> Im just starting out with python and pyramid and Im wondering what do you guys use?
>
> Are you using the host without VM? Vagrant? Docker?
>
> I came from PHP and usually develop using vagrant.
>
> --
> You received this message because you are subscribed to the Google Groups "pylons-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
--
You received this message because you are subscribed to the Google Groups "pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pylons-discuss+unsubscribe@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pylons-discuss/85881760-5908-afe4-9032-4433b4704b52%40gmail.com.

For more options, visit https://groups.google.com/d/optout.

Jonathan Vanasco

unread,
Feb 24, 2017, 11:19:26 AM2/24/17
to pylons-discuss

On Thursday, February 23, 2017 at 1:42:16 PM UTC-5, Oliver Berger wrote:
The key to have a distinct, reproducible setup and deployment is to use pyenv/virtualenv

I prefer simply requiring my team using `virtualenv` and host behind a standardized nginx setup (that mimics production).  That makes everything reproducible "enough". Occasionally an edge case will pop up because of slight differences in the stack, but that has most often been a good thing -- we'll have standardized the python version and packages, so we learn some random issue with other elements of the stack.   We could standardize more, but that is an investment of time -- and if someone is more productive with a given setup than another, I don't want to mess with that.

Jaime Sangcap

unread,
Mar 25, 2017, 5:03:44 PM3/25/17
to pylons-discuss
Thank you all for the response, my apologies for not getting back soon enough since I went back to php dev. But I want to give python another try :)

It seems that the common setup is using virtualenv + DB installed on the host machine? Then if you want more advance setup, you I'll with docker/container?

I usually don't install DB or any infrastructure on my host machine. But I guess its a common thing in python? Can I just installl pip with virtualenv and my DB of choice on my host machine (OSX) as a starting point?
Reply all
Reply to author
Forward
0 new messages