| |
@@ -24,6 +24,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/test
|
| |
@@ -38,6 +39,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/test2
|
| |
@@ -52,6 +54,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/somenamespace/test3
|
| |
@@ -170,6 +173,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/test2
|
| |
@@ -184,6 +188,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/somenamespace/test3
|
| |
@@ -191,28 +196,25 @@
|
| |
|
| |
repo test
|
| |
R = @all
|
| |
- RWC master = foo
|
| |
- RWC master = pingou
|
| |
- RWC f9000 = foo
|
| |
- RWC f9000 = pingou
|
| |
+ RWC master = foo pingou
|
| |
+ RWC f9000 = foo pingou
|
| |
- f[0-9][0-9] = @all
|
| |
- epel[0-9] = @all
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
- RWC = foo
|
| |
- RWC = pingou
|
| |
+ RWC = @provenpackager
|
| |
+ RWC = foo pingou
|
| |
|
| |
repo requests/test
|
| |
- RWC = foo
|
| |
- RWC = pingou
|
| |
+ RWC = foo pingou
|
| |
|
| |
# end of body'''
|
| |
self.assertMultiLineEqual(expected, contents.strip())
|
| |
|
| |
def test_get_supported_branches(self):
|
| |
""" Test for real what is returned by PDC. """
|
| |
- expected = ['master', 'f26', 'f25', 'el6']
|
| |
+ expected = ['master', 'f27', 'f26', 'f25', 'el6']
|
| |
actual = dist_git_auth.get_supported_branches('rpms', 'nethack')
|
| |
self.assertEquals(set(actual), set(expected))
|
| |
|
| |
@@ -277,6 +279,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/test2
|
| |
@@ -291,6 +294,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/somenamespace/test3
|
| |
@@ -305,7 +309,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
- RWC = @test_grp
|
| |
+ RWC = @test_grp @provenpackager
|
| |
RWC = foo
|
| |
|
| |
repo requests/test
|
| |
@@ -357,6 +361,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/test
|
| |
@@ -371,6 +376,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/test2
|
| |
@@ -385,6 +391,7 @@
|
| |
- epel[0-9][0-9] = @all
|
| |
- el[0-9] = @all
|
| |
- olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
RWC = pingou
|
| |
|
| |
repo requests/somenamespace/test3
|
| |
@@ -399,3 +406,95 @@
|
| |
|
| |
# end of body'''
|
| |
self.assertMultiLineEqual(expected, contents.strip())
|
| |
+
|
| |
+ @mock.patch('dist_git_auth.get_supported_branches')
|
| |
+ def test_write_gitolite_acls_rpms_firefox(self, get_supported_branches):
|
| |
+ """ Test generating the entire gitolite configuration file
|
| |
+ with the firefox project in the rpms namespace (ie a project not
|
| |
+ allowing provenpackager access).
|
| |
+
|
| |
+ """
|
| |
+ get_supported_branches.return_value = ['master', 'f9000']
|
| |
+ print("Initializing DB.")
|
| |
+ item = pagure.lib.model.Project(
|
| |
+ user_id=1, # pingou
|
| |
+ name='firefox',
|
| |
+ description='The firefox project',
|
| |
+ hook_token='aaabbbeee',
|
| |
+ namespace='rpms',
|
| |
+ )
|
| |
+ self.session.add(item)
|
| |
+ self.session.commit()
|
| |
+
|
| |
+ print("Generating %r" % self.configfile)
|
| |
+ dist_git_auth.DistGitoliteAuth.write_gitolite_acls(
|
| |
+ self.session,
|
| |
+ configfile=self.configfile,
|
| |
+ project=-1)
|
| |
+
|
| |
+ print("Checking the contents of %r" % self.configfile)
|
| |
+ with open(self.configfile, 'r') as f:
|
| |
+ contents = f.read()
|
| |
+ expected = """repo rpms/firefox
|
| |
+ R = @all
|
| |
+ RWC master = pingou
|
| |
+ RWC f9000 = pingou
|
| |
+ - f[0-9][0-9] = @all
|
| |
+ - epel[0-9] = @all
|
| |
+ - epel[0-9][0-9] = @all
|
| |
+ - el[0-9] = @all
|
| |
+ - olpc[0-9] = @all
|
| |
+ RWC = pingou
|
| |
+
|
| |
+ repo requests/rpms/firefox
|
| |
+ RWC = pingou
|
| |
+
|
| |
+ # end of body
|
| |
+ """
|
| |
+ self.assertMultiLineEqual(contents.strip(), expected.strip())
|
| |
+
|
| |
+ @mock.patch('dist_git_auth.get_supported_branches')
|
| |
+ def test_write_gitolite_acls_firefox(self, get_supported_branches):
|
| |
+ """ Test generating the entire gitolite configuration file
|
| |
+ with the firefox project.
|
| |
+
|
| |
+ """
|
| |
+ get_supported_branches.return_value = ['master', 'f9000']
|
| |
+ print("Initializing DB.")
|
| |
+ item = pagure.lib.model.Project(
|
| |
+ user_id=1, # pingou
|
| |
+ name='firefox',
|
| |
+ description='The firefox project',
|
| |
+ hook_token='aaabbbeee',
|
| |
+ namespace=None,
|
| |
+ )
|
| |
+ self.session.add(item)
|
| |
+ self.session.commit()
|
| |
+
|
| |
+ print("Generating %r" % self.configfile)
|
| |
+ dist_git_auth.DistGitoliteAuth.write_gitolite_acls(
|
| |
+ self.session,
|
| |
+ configfile=self.configfile,
|
| |
+ project=-1)
|
| |
+
|
| |
+ print("Checking the contents of %r" % self.configfile)
|
| |
+ with open(self.configfile, 'r') as f:
|
| |
+ contents = f.read()
|
| |
+ expected = """repo firefox
|
| |
+ R = @all
|
| |
+ RWC master = pingou
|
| |
+ RWC f9000 = pingou
|
| |
+ - f[0-9][0-9] = @all
|
| |
+ - epel[0-9] = @all
|
| |
+ - epel[0-9][0-9] = @all
|
| |
+ - el[0-9] = @all
|
| |
+ - olpc[0-9] = @all
|
| |
+ RWC = @provenpackager
|
| |
+ RWC = pingou
|
| |
+
|
| |
+ repo requests/firefox
|
| |
+ RWC = pingou
|
| |
+
|
| |
+ # end of body
|
| |
+ """
|
| |
+ self.assertMultiLineEqual(contents.strip(), expected.strip())
|
| |
Signed-off-by: Pierre-Yves Chibon pingou@pingoured.fr