Re: distributed development methodology
On Saturday, October 29, 2016 at 1:20:25 PM UTC+5:30, Paul Rubin wrote: > Adam Jensen writes: > > So what are some of the more successful distributed. multi-platform, > > development models? > > Use an orchestration program to keep the systems in sync: I use ansible > (ansible.com) which is written in Python and fairly simple once you get > used to it, but there are lots of other programs in that space and > everyone has their own preferences. > > If stuff doesn't change too often, you could also use Docker or whatever > the current hotness is to make a container image and deploy it to your > fleet. Been seeing things like this of late: https://thehftguy.wordpress.com/2016/11/01/docker-in-production-an-history-of-failure/ [Disclaimer: No direct experience myself one way or other] LXC and others compared: https://www.flockport.com/alternatives-to-docker-and-lxc/ -- https://mail.python.org/mailman/listinfo/python-list
Re: distributed development methodology
On 10/29/2016 12:31 AM, Adam Jensen wrote: > On 10/28/2016 11:59 PM, Cameron Simpson wrote: >> Sync the virtualenv prerequisites file with your DVCS. Have a tiny >> script to update the local virtualenv prereq file and run its update >> command to honour any new prereqs. > > Cool. I didn't mention that I am a python n00b, did I? What/where is the > "virtualenv prerequisites file" and what would the "update command" look > like? :) > For posterity: pip freeze > requirements.txt pip install -r requirements.txt https://pip.pypa.io/en/latest/user_guide/#requirements-files -- https://mail.python.org/mailman/listinfo/python-list
Re: distributed development methodology
Adam Jensenwrites: > So what are some of the more successful distributed. multi-platform, > development models? Use an orchestration program to keep the systems in sync: I use ansible (ansible.com) which is written in Python and fairly simple once you get used to it, but there are lots of other programs in that space and everyone has their own preferences. If stuff doesn't change too often, you could also use Docker or whatever the current hotness is to make a container image and deploy it to your fleet. -- https://mail.python.org/mailman/listinfo/python-list
Re: distributed development methodology
On 29Oct2016 00:11, Adam Jensenwrote: On 10/28/2016 11:59 PM, Cameron Simpson wrote: Sync the virtualenv prerequisites file with your DVCS. Have a tiny script to update the local virtualenv prereq file and run its update command to honour any new prereqs. Cool. I didn't mention that I am a python n00b, did I? What/where is the "virtualenv prerequisites file" and what would the "update command" look like? :) Have a read of this: https://www.dabapps.com/blog/introduction-to-pip-and-virtualenv-python/ and then this: https://pip.pypa.io/en/latest/user_guide/#requirements-files Then come back with specific questions :-) Cheers, Cameron Simpson -- https://mail.python.org/mailman/listinfo/python-list
Re: distributed development methodology
On Sat, Oct 29, 2016 at 2:59 PM, Cameron Simpsonwrote: > On 28Oct2016 23:02, Adam Jensen wrote: >> >> If one were to develop a Python application on multiple machines, what >> are some good methods for keeping them synchronized? For example, I >> develop on a FreeBSD machine and a CentOS machine, each with python2.7 >> and differing sets of site packages. On each machine, I can use >> virtualenv. But if I 'pip install xxx' on one, should I just try to >> remember to do the same on the other? I am not sure about the details >> but syncing the entire virtualenv directory with a DVCS seems like it >> might be problematic. (I prefer https://www.fossil-scm.org). >> >> So what are some of the more successful distributed. multi-platform, >> development models? > > > Sync the virtualenv prerequisites file with your DVCS. Have a tiny script to > update the local virtualenv prereq file and run its update command to honour > any new prereqs. Easiest way that I've found is to use requirements.txt and "pip install -r requirements.txt". And as Cameron says, source control is the key, but you don't don't need to manage the entire venv, just the one key file. ChrisA -- https://mail.python.org/mailman/listinfo/python-list
Re: distributed development methodology
On 10/28/2016 11:59 PM, Cameron Simpson wrote: > Sync the virtualenv prerequisites file with your DVCS. Have a tiny > script to update the local virtualenv prereq file and run its update > command to honour any new prereqs. Cool. I didn't mention that I am a python n00b, did I? What/where is the "virtualenv prerequisites file" and what would the "update command" look like? :) -- https://mail.python.org/mailman/listinfo/python-list
Re: distributed development methodology
On 10/28/2016 11:59 PM, Cameron Simpson wrote: > Sync the virtualenv prerequisites file with your DVCS. Have a tiny > script to update the local virtualenv prereq file and run its update > command to honour any new prereqs. Cool. I didn't mention that I am a python n00b, did I? What/where is the "virtualenv prerequisites file" and what would the "update command" look like? :) -- https://mail.python.org/mailman/listinfo/python-list
Re: distributed development methodology
On 28Oct2016 23:02, Adam Jensenwrote: If one were to develop a Python application on multiple machines, what are some good methods for keeping them synchronized? For example, I develop on a FreeBSD machine and a CentOS machine, each with python2.7 and differing sets of site packages. On each machine, I can use virtualenv. But if I 'pip install xxx' on one, should I just try to remember to do the same on the other? I am not sure about the details but syncing the entire virtualenv directory with a DVCS seems like it might be problematic. (I prefer https://www.fossil-scm.org). So what are some of the more successful distributed. multi-platform, development models? Sync the virtualenv prerequisites file with your DVCS. Have a tiny script to update the local virtualenv prereq file and run its update command to honour any new prereqs. Cheers, Cameron Simpson -- https://mail.python.org/mailman/listinfo/python-list
distributed development methodology
If one were to develop a Python application on multiple machines, what are some good methods for keeping them synchronized? For example, I develop on a FreeBSD machine and a CentOS machine, each with python2.7 and differing sets of site packages. On each machine, I can use virtualenv. But if I 'pip install xxx' on one, should I just try to remember to do the same on the other? I am not sure about the details but syncing the entire virtualenv directory with a DVCS seems like it might be problematic. (I prefer https://www.fossil-scm.org). So what are some of the more successful distributed. multi-platform, development models? -- https://mail.python.org/mailman/listinfo/python-list