[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Implementing a 'deploy' script / webdav

From: robert mena <robert.mena_at_gmail.com>
Date: Fri, 19 Mar 2010 19:22:08 -0430


Just to make sure my 'requirements' are clear I have a repository (/repos)
where I have several projects like clientA, clientB etc.

They are all websites so the devel team (testers, layout etc) adds, removes,
updates directories and files related. When they've reached a point where
they need to show something for the client (or an outside tester) they need
to 'publish' their modifications to a server (different than the devel one).

For security and technical reasons (try teaching designers about ssh :) )
they are not allowed to access the remote server (staging). So now I have
someone with a list of files that he does a svn update in the remote server.
 This is boring and takes one person for a mechanical job (automation!

So my take would be:
- create a simple app where the developer puts the name of the directory or
files that he/she wants to be published in the staging server
- another app will run from the crontab of the staging server and fetch the
pending requests, do an exec svn xxxx (the args will be sanitized for
security) and save the output

Why webdav : essentially for the granularity of the access/auth control.

I'd like to cut as many steps as possible so the request for feedback and/or
code snippets for the app.

I'll use php for both parts.

On Fri, Mar 19, 2010 at 6:35 PM, Ryan Schmidt <
subversion-2010a_at_ryandesign.com> wrote:

> On Mar 19, 2010, at 16:55, robert mena wrote:
> > I am using svn (webdav) and I need to allow the developers to request
> that updates are made in a staging server.
> >
> > Since the developers can't access the server from the console/ssh I'd
> like to create a system where the developer would list the files and
> request. My script would pull the requests and do a svn update xxxx and
> return to the user the output of the command.
> >
> > I do not want to reinvent the wheel so tips would be great.
> I suggest you use SVN::Notify::Mirror. Developers who wish to promote
> something to the staging server need only create a tag with a name of a
> certain format, and SVN::Notify::Mirror will deploy the contents of the tag
> to the right place.
Received on 2010-03-20 00:52:36 CET

This is an archived mail posted to the Subversion Users mailing list.