Re: Django Continuous Integration

2009-02-05 Thread Ales Zoulek

> Revision Control: How do you layout your development repository?  I'm
> using Subversion for my setup but would be interested in hearing what
> else others are using (Mercurial, Bazaar, Git, etc)
GIT client against SVN repository.


>
> Packaging:  Django has an aversion to using setuptools and opts to
> stick with the basics in distutils.  What are you using for packaging
> your application?  What's the best way to deploy a Django project that
> would make it easy on the end user to install and configure?  I don't
> really care about providing individual apps.  I wish to deploy my
> application in it's entirety.  It would be nice if this could be
> worked into the development process.  Pylons and Turbogears seem to
> have a nice process setup using Paste and virtualenv that works well
> for the development and testing process.  Do Django users have
> something similar?
Script that is rpmbuilding two packages - sources and statics.



> Versioning: How do you mark versions of your Django project?  Meaning,
> how can you create your Django app so it has a version that you can
> track within the application itself as well as for setting up
> upgrades, etc?  I can create something in __init__.py in the root of
> my project but how does that work with the SCM?  Since trunk is always
> in development it would make sense to have something in there.  Do you
> keep it is a tag or branch?  I'm new to this so hopefully I'm making
> sense.
Versionin is created from
--
Where SVN rev is optional.


> Migrations: What do you use to track database migrations?  I know of
> django-evolution, South and a few others but I really have no idea how
> these function and which is the most mature.  What do you have
> experience with?

Special directory which contains SQL scripts that alter database
structure from open interation to another. This is applied on package
install.



> That's probably plenty for this post.  Sorry it's so long but this is
> difficult stuff and it's spread out across the internet.  Not to
> mention that it's not specific to Django development.
>
> I've recently worked with a Java developer and got a chance to see his
> development process and was really impressed.  Java seems to have more
> tools available that tie in nicely with each other for continuous
> integration.  He was using Trac, Buildbot, Unit testing (JUnit) and
> had scripts to deploy to a new server immediately.  It was pretty
> impressive and I would like to know if anyone has something similar
> setup for their Django projects.
>
> Thanks in advance for any input.
> >
>



-- 
--
Ales Zoulek
+420 604 332 515
Jabber: a...@jabber.cz
ICQ: 82647256
--

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Re: Django Continuous Integration

2009-02-04 Thread Vitaly Babiy
Has any one got hudson to work as a CI system.
Vitaly Babiy


On Wed, Jan 14, 2009 at 1:05 PM, Adam V.  wrote:

>
> > Revision Control: How do you layout your development repository?  I'm
> > using Subversion for my setup but would be interested in hearing what
> > else others are using (Mercurial, Bazaar, Git, etc)
>
> We're using Subversion. We have one big repository, but we treat it
> like two top-level repository, one for the website files themselves,
> and one for build scripts and other tools. We're a small shop (<6
> devs), so SVN is fine for what we're doing.
>
> > Packaging:  Django has an aversion to using setuptools and opts to
> > stick with the basics in distutils.  What are you using for packaging
> > your application?
>
> We're doing in-house development, so we don't package our project/app.
>
> > Buildbot:  Do you use Buildbot or something similar for your Django
> > development?  How does that work for you?  What other options are
> > there that would work well?
>
> We use CruiseControl.NET as our CI tool, since we're using that for
> our .NET development anyway.
> It watches SVN for changes and calls custom scripts written in Python
> that look a little like this:
> http://code.google.com/p/adamv/source/browse/python/buildsystem/
>
> > Versioning: How do you mark versions of your Django project?
> We're running against Django-trunk so far.
>
> > Migrations: What do you use to track database migrations?
> We're using MS SQL Server (since that's what our other stuff is in),
> and we're using a 3rd party commercial tool called "RedGate SQL
> Compare" to do schema upgrades. We keep our DB schema in source
> control as a set of SQL files that gets run to create a new, empty
> database.
>
> Since we're doing Django on top of a "legacy" database, our Django
> models don't own the bulk of the database, and SQL Compare is what our
> main .NET apps are using to update schemas when we deploy that stuff.
>
> >
>

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Re: Django Continuous Integration

2009-01-14 Thread Adam V.

> Revision Control: How do you layout your development repository?  I'm
> using Subversion for my setup but would be interested in hearing what
> else others are using (Mercurial, Bazaar, Git, etc)

We're using Subversion. We have one big repository, but we treat it
like two top-level repository, one for the website files themselves,
and one for build scripts and other tools. We're a small shop (<6
devs), so SVN is fine for what we're doing.

> Packaging:  Django has an aversion to using setuptools and opts to
> stick with the basics in distutils.  What are you using for packaging
> your application?

We're doing in-house development, so we don't package our project/app.

> Buildbot:  Do you use Buildbot or something similar for your Django
> development?  How does that work for you?  What other options are
> there that would work well?

We use CruiseControl.NET as our CI tool, since we're using that for
our .NET development anyway.
It watches SVN for changes and calls custom scripts written in Python
that look a little like this:
http://code.google.com/p/adamv/source/browse/python/buildsystem/

> Versioning: How do you mark versions of your Django project?
We're running against Django-trunk so far.

> Migrations: What do you use to track database migrations?
We're using MS SQL Server (since that's what our other stuff is in),
and we're using a 3rd party commercial tool called "RedGate SQL
Compare" to do schema upgrades. We keep our DB schema in source
control as a set of SQL files that gets run to create a new, empty
database.

Since we're doing Django on top of a "legacy" database, our Django
models don't own the bulk of the database, and SQL Compare is what our
main .NET apps are using to update schemas when we deploy that stuff.

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Re: Django Continuous Integration

2009-01-13 Thread felix
On Tue, Jan 13, 2009 at 7:45 PM, mguthrie  wrote:

>
> Revision Control: How do you layout your development repository?  I'm
> using Subversion for my setup but would be interested in hearing what
> else others are using (Mercurial, Bazaar, Git, etc)



I have django and third party apps checked out via svn into my development
folder.
so I can update those when I want to.

then I git that whole stack

I push that to a (bare) git repos on one of my servers
(bare means that it isn't a working copy, its just the files, like an svn
server)

and use fab / fabric to do the deployment.

that means on my local machine:

fab pushpull

does a git push (from local checked in changes up to the repository)
does a git pull (from the respository on the remote server into my actual
deployment folder incidentally on the same server)
and then restarts apache


does the deployment.
fab is in alpha and is changing, but I like its direct simplicity.


later I will probably do different branches on the git stack that include /
exclude different sites / apps

so that whatever I'm deploying is just the code that that site (or cluster
of sites) needs

I'm still not completely at peace with this solution but it has worked quite
well so far.

-fx





>
>
> Packaging:  Django has an aversion to using setuptools and opts to
> stick with the basics in distutils.  What are you using for packaging
> your application?  What's the best way to deploy a Django project that
> would make it easy on the end user to install and configure?  I don't
> really care about providing individual apps.  I wish to deploy my
> application in it's entirety.  It would be nice if this could be
> worked into the development process.  Pylons and Turbogears seem to
> have a nice process setup using Paste and virtualenv that works well
> for the development and testing process.  Do Django users have
> something similar?
>
> Buildbot:  Do you use Buildbot or something similar for your Django
> development?  How does that work for you?  What other options are
> there that would work well?
>
> Versioning: How do you mark versions of your Django project?  Meaning,
> how can you create your Django app so it has a version that you can
> track within the application itself as well as for setting up
> upgrades, etc?  I can create something in __init__.py in the root of
> my project but how does that work with the SCM?  Since trunk is always
> in development it would make sense to have something in there.  Do you
> keep it is a tag or branch?  I'm new to this so hopefully I'm making
> sense.
>
> Migrations: What do you use to track database migrations?  I know of
> django-evolution, South and a few others but I really have no idea how
> these function and which is the most mature.  What do you have
> experience with?
>
> That's probably plenty for this post.  Sorry it's so long but this is
> difficult stuff and it's spread out across the internet.  Not to
> mention that it's not specific to Django development.
>
> I've recently worked with a Java developer and got a chance to see his
> development process and was really impressed.  Java seems to have more
> tools available that tie in nicely with each other for continuous
> integration.  He was using Trac, Buildbot, Unit testing (JUnit) and
> had scripts to deploy to a new server immediately.  It was pretty
> impressive and I would like to know if anyone has something similar
> setup for their Django projects.
>
> Thanks in advance for any input.
> >
>

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Re: Django Continuous Integration

2009-01-13 Thread Rachel Willmer

An interesting set of questions, and one I've been thinking about myself.

So here's my tuppence-worth.

Background: I've written a set of 3 websites, which I've developed
incrementally, some shared code, some separate - done for my own
benefit, no external customer, so I can change things as I see fit.

It's a small project but one of the purposes is to work out how best
to manage a larger project or set of websites which use a common base.

> Revision Control: How do you layout your development repository?  I'm
> using Subversion for my setup but would be interested in hearing what
> else others are using (Mercurial, Bazaar, Git, etc)

svn for revision control.

This is a very interesting article from James Bennett who's always
worth listening to...

http://www.b-list.org/weblog/2006/sep/10/django-tips-laying-out-application/

> Packaging:  Django has an aversion to using setuptools and opts to
> stick with the basics in distutils.  What are you using for packaging
> your application?  What's the best way to deploy a Django project that

My packaging is very simple - an upload script which does an svn
update to get the current code, rips out the .svn stuff and any
unwanted directories, then rsync up to the live host. No other
packaging needed since I'm the only user :-)

> Buildbot:  Do you use Buildbot or something similar for your Django
> development?  How does that work for you?  What other options are
> there that would work well?

I run my test prog regularly from a cron job.

The test prog runs unit tests through the common code, and functional
tests for the various websites.

> Versioning: How do you mark versions of your Django project?  Meaning,
> how can you create your Django app so it has a version that you can
> track within the application itself as well as for setting up
> upgrades, etc?  I can create something in __init__.py in the root of
> my project but how does that work with the SCM?  Since trunk is always
> in development it would make sense to have something in there.  Do you
> keep it is a tag or branch?  I'm new to this so hopefully I'm making
> sense.

I'd do a svn tag.

> Migrations: What do you use to track database migrations?  I know of
> django-evolution, South and a few others but I really have no idea how
> these function and which is the most mature.  What do you have
> experience with?

Haven't found a good answer to this yet, although django-evolution
looks interesting.

I'm interested to hear how others do it all

Rachel

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Django Continuous Integration

2009-01-13 Thread mguthrie

I've been working on understanding "agile" programming practices as
well as setting up a proper development/testing/release environment.

There are several good resources out there for getting these things
configured for Python projects in general but nothing really specific
to Django.

What has worked for other Django developers/shops?  How have you
managed your processes?  Any information on the following would be
great:

Revision Control: How do you layout your development repository?  I'm
using Subversion for my setup but would be interested in hearing what
else others are using (Mercurial, Bazaar, Git, etc)

Packaging:  Django has an aversion to using setuptools and opts to
stick with the basics in distutils.  What are you using for packaging
your application?  What's the best way to deploy a Django project that
would make it easy on the end user to install and configure?  I don't
really care about providing individual apps.  I wish to deploy my
application in it's entirety.  It would be nice if this could be
worked into the development process.  Pylons and Turbogears seem to
have a nice process setup using Paste and virtualenv that works well
for the development and testing process.  Do Django users have
something similar?

Buildbot:  Do you use Buildbot or something similar for your Django
development?  How does that work for you?  What other options are
there that would work well?

Versioning: How do you mark versions of your Django project?  Meaning,
how can you create your Django app so it has a version that you can
track within the application itself as well as for setting up
upgrades, etc?  I can create something in __init__.py in the root of
my project but how does that work with the SCM?  Since trunk is always
in development it would make sense to have something in there.  Do you
keep it is a tag or branch?  I'm new to this so hopefully I'm making
sense.

Migrations: What do you use to track database migrations?  I know of
django-evolution, South and a few others but I really have no idea how
these function and which is the most mature.  What do you have
experience with?

That's probably plenty for this post.  Sorry it's so long but this is
difficult stuff and it's spread out across the internet.  Not to
mention that it's not specific to Django development.

I've recently worked with a Java developer and got a chance to see his
development process and was really impressed.  Java seems to have more
tools available that tie in nicely with each other for continuous
integration.  He was using Trac, Buildbot, Unit testing (JUnit) and
had scripts to deploy to a new server immediately.  It was pretty
impressive and I would like to know if anyone has something similar
setup for their Django projects.

Thanks in advance for any input.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---