Merge lp:~gandelman-a/charms/precise/keystone/fixes into lp:~charmers/charms/precise/keystone/trunk

Proposed by Adam Gandelman
Status: Merged
Merge reported by: Adam Gandelman
Merged at revision: not available
Proposed branch: lp:~gandelman-a/charms/precise/keystone/fixes
Merge into: lp:~charmers/charms/precise/keystone/trunk
Diff against target: 57 lines (+16/-3)
1 file modified
hooks/lib/openstack_common.py (+16/-3)
To merge this branch: bzr merge lp:~gandelman-a/charms/precise/keystone/fixes
Reviewer Review Type Date Requested Status
charmers Pending
Review via email: mp+136818@code.launchpad.net

Description of the change

Some fixes for handling of repo URLs via 'openstack-origin' config. Courtesy of James Page, but I seem to have lost write access to these branches to merge myself.

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'hooks/lib/openstack_common.py'
2--- hooks/lib/openstack_common.py 2012-10-12 17:26:48 +0000
3+++ hooks/lib/openstack_common.py 2012-11-29 00:13:25 +0000
4@@ -10,7 +10,8 @@
5 ubuntu_openstack_release = {
6 'oneiric': 'diablo',
7 'precise': 'essex',
8- 'quantal': 'folsom'
9+ 'quantal': 'folsom',
10+ 'raring' : 'grizzly'
11 }
12
13
14@@ -60,6 +61,12 @@
15 ca_rel = ca_rel.split('%s-' % ubuntu_rel)[1].split('/')[0]
16 return ca_rel
17
18+ # Best guess match based on deb string provided
19+ if src.startswith('deb'):
20+ for k, v in openstack_codenames.iteritems():
21+ if v in src:
22+ return v
23+
24 def get_os_codename_version(vers):
25 '''Determine OpenStack codename from version number.'''
26 try:
27@@ -132,7 +139,8 @@
28 return
29 elif rel[:4] == "ppa:":
30 src = rel
31- elif rel[:4] == "deb:":
32+ subprocess.check_call(["add-apt-repository", "-y", src])
33+ elif rel[:3] == "deb":
34 l = len(rel.split('|'))
35 if l == 2:
36 src, key = rel.split('|')
37@@ -142,6 +150,9 @@
38 src = rel
39 else:
40 error_out("Invalid openstack-release: %s" % rel)
41+
42+ with open('/etc/apt/sources.list.d/juju_deb.list', 'w') as f:
43+ f.write(src)
44 elif rel[:6] == 'cloud:':
45 ubuntu_rel = lsb_release()['DISTRIB_CODENAME']
46 rel = rel.split(':')[1]
47@@ -174,7 +185,9 @@
48
49 src = "deb %s %s main" % (CLOUD_ARCHIVE_URL, pocket)
50 _import_key(CLOUD_ARCHIVE_KEY_ID)
51+
52+ with open('/etc/apt/sources.list.d/cloud-archive.list', 'w') as f:
53+ f.write(src)
54 else:
55 error_out("Invalid openstack-release specified: %s" % rel)
56
57- subprocess.check_call(["add-apt-repository", "-y", src])

Subscribers

People subscribed via source and target branches