Merge ~cjwatson/launchpad:fix-ids-base-image-copy into launchpad:master

Proposed by Colin Watson
Status: Merged
Approved by: Colin Watson
Approved revision: 69e7b624355ad1df0362284a5045766b5d8a37b8
Merge reported by: Otto Co-Pilot
Merged at revision: not available
Proposed branch: ~cjwatson/launchpad:fix-ids-base-image-copy
Merge into: launchpad:master
Diff against target: 49 lines (+11/-9)
2 files modified
database/schema/security.cfg (+1/-1)
lib/lp/soyuz/scripts/tests/test_initialize_distroseries.py (+10/-8)
Reviewer Review Type Date Requested Status
Ioana Lasc (community) Approve
Review via email: mp+401695@code.launchpad.net

Commit message

Grant initializedistroseries access to insert PocketChroot rows

Description of the change

The tests were previously running as the wrong database user, so we missed this permissions problem.

To post a comment you must log in.
Revision history for this message
Ioana Lasc (ilasc) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/database/schema/security.cfg b/database/schema/security.cfg
2index 5da2031..bf9a9d3 100644
3--- a/database/schema/security.cfg
4+++ b/database/schema/security.cfg
5@@ -1114,7 +1114,7 @@ public.packageuploadbuild = SELECT
6 public.packageuploadcustom = SELECT, INSERT
7 public.packaging = SELECT, INSERT
8 public.person = SELECT
9-public.pocketchroot = SELECT
10+public.pocketchroot = SELECT, INSERT
11 public.processor = SELECT
12 public.publisherconfig = SELECT
13 public.section = SELECT
14diff --git a/lib/lp/soyuz/scripts/tests/test_initialize_distroseries.py b/lib/lp/soyuz/scripts/tests/test_initialize_distroseries.py
15index 3acddf6..7071e6f 100644
16--- a/lib/lp/soyuz/scripts/tests/test_initialize_distroseries.py
17+++ b/lib/lp/soyuz/scripts/tests/test_initialize_distroseries.py
18@@ -57,6 +57,7 @@ from lp.soyuz.scripts.initialize_distroseries import (
19 InitializeDistroSeries,
20 )
21 from lp.testing import TestCaseWithFactory
22+from lp.testing.dbuser import dbuser
23 from lp.testing.layers import LaunchpadZopelessLayer
24
25
26@@ -142,14 +143,15 @@ class InitializationHelperTestCase(TestCaseWithFactory):
27 pub_config = publisherconfigset.getByDistribution(child.distribution)
28 if pub_config is None:
29 self.factory.makePublisherConfig(distribution=child.distribution)
30- ids = InitializeDistroSeries(
31- child, [parent.id for parent in parents], arches=arches,
32- archindep_archtag=archindep_archtag,
33- packagesets=packagesets, rebuild=rebuild, overlays=overlays,
34- overlay_pockets=overlay_pockets,
35- overlay_components=overlay_components)
36- ids.check()
37- ids.initialize()
38+ with dbuser('initializedistroseries'):
39+ ids = InitializeDistroSeries(
40+ child, [parent.id for parent in parents], arches=arches,
41+ archindep_archtag=archindep_archtag,
42+ packagesets=packagesets, rebuild=rebuild, overlays=overlays,
43+ overlay_pockets=overlay_pockets,
44+ overlay_components=overlay_components)
45+ ids.check()
46+ ids.initialize()
47 return child
48
49 def createPackageInPackageset(self, distroseries, package_name,

Subscribers

People subscribed via source and target branches

to status/vote changes: