Skip to content
Browse files
apt_repository: check for enabled repositories correctly
Fixes #20754.

Details: UbuntuSourcesList.add_source() had a quick check for PPAs being
already present in the source lists.  The check was looking for the PPAs
URL to be present in self.repo_urls, which should contain all valid and
enabled repositories.

The enabled check in repo_urls was incorrect.  It was checking the tuple's
2nd item (which means "valid") and ignoring the 3rd item (which means

self.files contains tuples (line_number, valid, enabled, source_line,
comment_text).  Ideally it would be using named tuples instead of
indexing, to avoid bugs like that, but Python 2.4 didn't have named
tuples, so we can't do that (yet).
  • Loading branch information
mgedmin authored and abadger committed Feb 8, 2017
1 parent f16ee28 commit 577d0e43ba339788989ecdf9a9da97477596ec6d
Showing with 3 additions and 2 deletions.
  1. +3 −2 lib/ansible/modules/packaging/os/
@@ -458,10 +458,11 @@ def repos_urls(self):
_repositories = []
for parsed_repos in self.files.values():
for parsed_repo in parsed_repos:
enabled = parsed_repo[1]
valid = parsed_repo[1]
enabled = parsed_repo[2]
source_line = parsed_repo[3]

if not enabled:
if not valid or not enabled:

if source_line.startswith('ppa:'):

0 comments on commit 577d0e4

Please sign in to comment.