Hypervisor Support - Virtual Guest Image Versioning

2011-12-11 Thread ray
I am specifically looking at the Xen hypervisor but it may have broader
applicability.

I am in a personal workstation environment using Xen as a hypervisor
managing a half dozen guest operating systems.  I am planning on one of
those to be an Apache/SVN server.  There will be a variety of
repositories.  I am considering how I may implement a repository to
track the versioning of guest images.  I would like to keep version
histories of the different guests; experimental perturbations, upgrades,
etc.  I like the SVN version graph and I am wondering about how much I
can add notes to clarify the differences.  Additionally, update the
notes when in retrospect, more information is needed for historical
entries.

Since the binaries are large, I will probably need to extend the storage
to a slower, cheaper media for the older versions.  I want to keep fast
response for new entries.  I am wondering how I might have the best of
both worlds and still be able to pull up a full historical graph.

I plan to use SVN both locally and over the Internet for personal use
only; I am looking for comments/cogestions on setting up for this
service.

I would really like to hear comments and suggestions on implementing
Apache/SVN on such a hosted service and any about overall system
configuration.

ray



Subversion transactions within post-commit

2011-08-02 Thread Ray Rashif
Hi list

I've been stumped by this issue for months. I had never enough time to
troubleshoot it, so I'm finally desperate after having spent an entire
day trying to figure things out.

We have a _local_ checkout of the repository on our server, and our
post-commit hook needs to run svn-add, svn-rm and svn-ci commands in
that checkout. All of these commands run fine. For eg. (within the
post-commit script):

echo "Updating..."
svn up

would yield:

Updating...
Updated to revision $whatever.

And:

echo "Adding..."
svn add

would output:

Adding...
A $whatever

Now comes the interesting part. As soon as I add a commit transaction,
say, AFTER those commands, ALL of them FAIL at the SAME TIME:

echo "Updating.."
svn up
echo "Adding..."
svn add $whatever
echo "Committing..."
svn ci -m "$whatever"

gives us:

Updating...
svn: Working copy '.' locked
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
Adding...
svn: Working copy '.' locked
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
Committing...
svn: Working copy '.' locked
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)

Notes:

* It is always reproducible. I just remove the commit command from the
script and everything works as expected.

* The owner of the checked out repo is a normal user of the web
account, but post-commit is run by 'apache'.

* We have the repo chown'ed to $user:$user and perms set to 775.

* The user 'apache' is also part of the group $user, but the user
$user is _not_ part of the group 'apache' (not possible for security
reasons on the server).

* As such, both the currently logged in user and 'apache' can at least
do update transactions without any errors.

Another very important note:

* Since post-commit runs as 'apache', some Subversion files (not sure
which) are created with perms 444.

Would appreciate some help in this matter. Thanks!


--
GPG/PGP ID: 19BAA7AD


Re: Subversion transactions within post-commit

2011-08-02 Thread Ray Rashif
On 3 August 2011 04:37, David Weintraub  wrote:
> NO! NO! NO! AUUUGGGHHH!
>
> Never update a repository with a hook.! That's why you're given the
> relatively safe "svnlook" command. It allows you to look, but not
> touch a repository.
> ...
> SNIP
> ...

Arrrgghhh damn it! Exactly what I feared. Especially the recursion. So
much so that now I think I was in denial all the while.

OK, looks like I have to explain a bit further to clear this up and
hopefully get some solutions.

We use the repository to directly serve some files (so Subversion
updates are immediately reflected). Something like
http://subversion.apache.org/faq.html#website-auto-update

So $files.subdomain.org/public_html is actually a local checkout of
$svn.subdomain.org/public_html/trunk/$somedir, and whenever someone
commits something to the SVN repo, the post-commit hook updates the
local checkout. So anyone browsing the file server will get the most
recent files.

However, we need to be a bit more personal than that. We need to do
some checks on those files and remove ones that should not be there.
We need to do this immediately after the commit, so cron is not an
option. How should we go about doing this?


--
GPG/PGP ID: 19BAA7AD


Re: Subversion transactions within post-commit

2011-08-02 Thread Ray Rashif
On 3 August 2011 05:47, Nico Kadel-Garcia  wrote:
> That's what "svn checkout" for initial setup, and "svn update" or "svn
> revert" of the local copy are for.

We already have that working, I just outlined the current setup:

http://files.foobar.org/ is a direct file mirror (less revision
control; plus additional files generated post-commit dependent on the
latest version of each revision controlled file) of
http://svn.foobar.org/trunk/somewhere.

Developers push stuff to somewhere (which is private in Subversion).
This private area then gets served as HTTP/FTP, edited appropriately
for public use (and also for programs as some of the files generated
after a commit are databases).

> Then you do your updates in a working copy as part of a working copy,
> and that copy has a deployment script or "Makefile" that does "rsync"
> or other mirroring tools to publish those changes to your exposed
> website. I like "Makefile" bassed approaches, myself, so I can do
> "make", "make test", and "make install".

Ahh yes. This was one of our earlier plans, but I scraped that because
it would duplicate the contents (of the SVN repo) on the server. But
let me get this right:

svn commit (anywhere) -> post-commit -> svn up (local checkout), rsync
-> local mirror -> edits ?


--
GPG/PGP ID: 19BAA7AD


Re: Subversion transactions within post-commit

2011-08-03 Thread Ray Rashif
On 4 August 2011 01:59, David Weintraub  wrote:
> ...
> SNIP
> ...
> I have what I call my Kitchen Sink pre-commit trigger that does all
> sorts of stuff. One of the tasks it can do is "ban" files based upon
> their name (either regular expression or Ant glob). If a user adds a
> file with a forbidden name, the commit is rejected and the user is
> informed of the offending file. The user has to remove the file from
> their commit and try again.

Thanks guys. I'm just stupid. I've been going on and on about what we
want to do, but I haven't even stated the obvious:

* It's just about removing stale files from being tracked by
Subversion, _without_ committer intervention.

Basically, our developers (did|can do) this thing manually (remove an
older version of a binary they are committing). I wanted to automate
this. That's all!

So, after the discussion here, it's evident I'm doing this all wrong.
I've now just reverted our stuff to the last best working state, and
I'll be working on something based on:

pre-commit (as much filtering as possible during this stage)
post-commit (update the checkout)
rsync (mirror the checkout for publishing; do not reflect stale files)
cron (to svn rm; svn ci the stale files)


--
GPG/PGP ID: 19BAA7AD


SVN Mail List Help

2011-10-26 Thread Ray Joseph
I would like to review the SVN mail list archive.  The only reference I
have found is on http://subversion.apache.org/packages.html#windows and
it only include an email address.  Is there a way to browse the archive?

Per the page "If there are any problems with or questions about the
different binary packages please send email to the Subversion users
mailing list <mailto:users@subversion.apache.org> ."  I would like to
learn about the differences between the different binaries for Windows 

Thanks,

ray

 



Authentication Failure

2010-02-16 Thread Ray Madigan
Im sure this question has been answered in a way that make a difference for
my implementation, but I am unable to find it.  I have worked all day and
haven't been able to get past the results of the first 10 minutes.

I am running the svnserve daemon on one machine, ip=...30 and am tryint to
access it from another machine with ip=...25

Both machines are running OpenSUSE 11.2 and the svn system on both machines
comes from their repository of applications.

the group svn has been created and the user svn was also created.
svn and solomon are all in the svn group

the issue is when I attempt to run 
svn import /solomon svn://...30/mooky/solomon 

I get the the message 
svn: Authentication failed

when I run this command I am logged in as solomon on the machine with ip
address ...25

On the server I am running the init.d/svnserve deamon with
./svnserve start

The config file has the following properties

[general]
anon-access = read
auth-access = write
password-db = /mooky/passwd
authz-db = /mooky/authz
realm = mooky

The passwd file is
[users]
solomon = foobar

and the authz file is
[groups]
developer = solomon
[/mooky]
@developer = rw
* = 


<>

[svn-policy] Anonymous read in toplevel but deny read deeper

2010-10-01 Thread Ray Rashif
Hi all

I have something like the following:

[groups]
admin = joe
contrib = susan, mark
devs = andy, jane

[/]
* = r

[/trunk]
@admin = rw

[/trunk/contrib]
@contrib = rw
@devs = rw

[/trunk/dev]
* =
@contrib =
@devs = rw

Unfortunately, authentication does not work, and anyone can read
'/trunk/dev' and I guess that is due to '* = r' in toplevel.
Strangely, it works for groups, the only change being:

[/]
@contrib = r

And nothing for '*' anywhere, that would prevent anyone in the group
'contrib' to pull '/trunk/dev' in a full checkout. But this then locks
out anonymous read-only full checkouts (I can have '* = r' for each
dir except 'dev'), which I do not want.

Thanks beforehand!


--
GPG/PGP ID: B42DDCAD