1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE> [Mageia-sysadm] [813] add a new class to do a mirror of a svn reporitory ( for display purpose with viewvc or any others )
</TITLE>
<LINK REL="Index" HREF="index.html" >
<LINK REL="made" HREF="mailto:mageia-sysadm%40mageia.org?Subject=Re%3A%20%5BMageia-sysadm%5D%20%5B813%5D%20add%20a%20new%20class%20to%20do%20a%20mirror%20of%20a%20svn%0A%20reporitory%20%28%20for%20display%20purpose%20with%20viewvc%20or%20any%20others%20%29&In-Reply-To=%3C20110117152409.3C16A427CC%40valstar.mageia.org%3E">
<META NAME="robots" CONTENT="index,nofollow">
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
<LINK REL="Previous" HREF="002152.html">
<LINK REL="Next" HREF="002154.html">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H1>[Mageia-sysadm] [813] add a new class to do a mirror of a svn reporitory ( for display purpose with viewvc or any others )</H1>
<B>root at mageia.org</B>
<A HREF="mailto:mageia-sysadm%40mageia.org?Subject=Re%3A%20%5BMageia-sysadm%5D%20%5B813%5D%20add%20a%20new%20class%20to%20do%20a%20mirror%20of%20a%20svn%0A%20reporitory%20%28%20for%20display%20purpose%20with%20viewvc%20or%20any%20others%20%29&In-Reply-To=%3C20110117152409.3C16A427CC%40valstar.mageia.org%3E"
TITLE="[Mageia-sysadm] [813] add a new class to do a mirror of a svn reporitory ( for display purpose with viewvc or any others )">root at mageia.org
</A><BR>
<I>Mon Jan 17 16:24:09 CET 2011</I>
<P><UL>
<LI>Previous message: <A HREF="002152.html">[Mageia-sysadm] [812] new vhost_wsgi type, for viewvc support
</A></li>
<LI>Next message: <A HREF="002154.html">[Mageia-sysadm] [814] - add a module to generate gnupg key ( similar to the one for openssl
</A></li>
<LI> <B>Messages sorted by:</B>
<a href="date.html#2153">[ date ]</a>
<a href="thread.html#2153">[ thread ]</a>
<a href="subject.html#2153">[ subject ]</a>
<a href="author.html#2153">[ author ]</a>
</LI>
</UL>
<HR>
<!--beginarticle-->
<PRE>Revision: 813
Author: misc
Date: 2011-01-17 16:24:08 +0100 (Mon, 17 Jan 2011)
Log Message:
-----------
add a new class to do a mirror of a svn reporitory ( for display purpose with viewvc or any others )
Modified Paths:
--------------
puppet/modules/subversion/manifests/init.pp
Added Paths:
-----------
puppet/modules/subversion/templates/create_svn_mirror.sh
Modified: puppet/modules/subversion/manifests/init.pp
===================================================================
--- puppet/modules/subversion/manifests/init.pp 2011-01-17 15:24:07 UTC (rev 812)
+++ puppet/modules/subversion/manifests/init.pp 2011-01-17 15:24:08 UTC (rev 813)
@@ -273,4 +273,30 @@
minute => $refresh
}
}
+
+ class mirror {
+ include subversion::tools
+ file { "/usr/local/bin/create_svn_mirror.sh":
+ ensure => present,
+ owner => root,
+ group => root,
+ mode => 755,
+ content => template('subversion/create_svn_mirror.sh')
+ }
+ }
+
+ define mirror_repository($source,
+ $refresh = '*/5') {
+ include subversion::mirror
+
+ exec { "/usr/local/bin/create_svn_mirror.sh $name $source":
+ creates => $name,
+ require => Package['subversion-tools']
+ }
+
+ cron { "update $name":
+ command => "/usr/bin/svnsync synchronize <A HREF="file://$name">file://$name</A>",
+ minute => $refresh,
+ }
+ }
}
Added: puppet/modules/subversion/templates/create_svn_mirror.sh
===================================================================
--- puppet/modules/subversion/templates/create_svn_mirror.sh (rev 0)
+++ puppet/modules/subversion/templates/create_svn_mirror.sh 2011-01-17 15:24:08 UTC (rev 813)
@@ -0,0 +1,13 @@
+#!/bin/bash
+umask 0002
+LOCAL_REPOS=$1
+REMOTE_REPOS=$2
+svnadmin create $LOCAL_REPOS
+# needed, as svnsync complain otherwise :
+# svnsync: Repository has not been enabled to accept revision propchanges;
+# ask the administrator to create a pre-revprop-change hook
+ln -s /bin/true $LOCAL_REPOS/hooks/pre-revprop-change
+svnsync init <A HREF="file://$1">file://$1</A> $2
+# do not sync now,
+# let cron do it or puppet will complain ( especially for long sync )
+#svnsync synchronize <A HREF="file://$1">file://$1</A>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/mageia-sysadm/attachments/20110117/690dd1ec/attachment-0001.html>
</PRE>
<!--endarticle-->
<HR>
<P><UL>
<!--threads-->
<LI>Previous message: <A HREF="002152.html">[Mageia-sysadm] [812] new vhost_wsgi type, for viewvc support
</A></li>
<LI>Next message: <A HREF="002154.html">[Mageia-sysadm] [814] - add a module to generate gnupg key ( similar to the one for openssl
</A></li>
<LI> <B>Messages sorted by:</B>
<a href="date.html#2153">[ date ]</a>
<a href="thread.html#2153">[ thread ]</a>
<a href="subject.html#2153">[ subject ]</a>
<a href="author.html#2153">[ author ]</a>
</LI>
</UL>
<hr>
<a href="https://www.mageia.org/mailman/listinfo/mageia-sysadm">More information about the Mageia-sysadm
mailing list</a><br>
</body></html>
|