[Git][security-tracker-team/security-tracker][master] 2 commits: lts-missing-uploads: don't hardcode lts release
Emilio Pozuelo Monfort (@pochu)
pochu at debian.org
Thu Aug 18 14:55:21 BST 2022
Emilio Pozuelo Monfort pushed to branch master at Debian Security Tracker / security-tracker
Commits:
b0fc6ed2 by Emilio Pozuelo Monfort at 2022-08-18T14:25:33+02:00
lts-missing-uploads: don't hardcode lts release
- - - - -
999e4cdf by Emilio Pozuelo Monfort at 2022-08-18T15:50:57+02:00
lts-missing-uploads: ignore DLAs for older releases
Otherwise we'll check the version in the old DLA against the current
LTS's Sources.
- - - - -
1 changed file:
- bin/lts-missing-uploads
Changes:
=====================================
bin/lts-missing-uploads
=====================================
@@ -26,9 +26,19 @@ import dateutil.relativedelta
from debian.deb822 import Sources
from debian.debian_support import Version
+import setup_paths # noqa # pylint: disable=unused-import
+import config
+
+lts = config.get_supported_releases()[0]
+
+
+class DLAForAnotherRelease(Exception):
+ pass
+
+
class LTSMissingUploads(object):
MONTHS = 6
- SOURCES = ['http://security.debian.org/dists/buster/updates/{}/source/Sources.gz'.format(component)
+ SOURCES = ['http://security.debian.org/dists/{}/updates/{}/source/Sources.gz'.format(lts, component)
for component in ('main', 'contrib', 'non-free')]
re_line = re.compile(
@@ -46,8 +56,11 @@ class LTSMissingUploads(object):
dlas = {}
def download(x):
self.info("{source}: parsing announcement from {url} ...", **x)
- x.update(self.get_dla(x['url'])[0])
- dlas[x['source']] = x
+ try:
+ x.update(self.get_dla(x['url'])[0])
+ dlas[x['source']] = x
+ except DLAForAnotherRelease:
+ pass
for idx in range(self.MONTHS):
dt = datetime.datetime.utcnow().replace(day=1) - \
@@ -112,7 +125,7 @@ class LTSMissingUploads(object):
return result
def get_dla(self, url):
- return self.parse(url, self.re_version)
+ return self.parse(url, self.re_version, is_dla=True)
def get_sources(self):
pkgver = {}
@@ -129,9 +142,14 @@ class LTSMissingUploads(object):
return pkgver
- def parse(self, url, pattern):
+ def parse(self, url, pattern, is_dla=False):
result = []
+ # if parsing a specific DLA (as opposed to the DLAs list), check
+ # if the DLA is for the current LTS release, and ignore if not
+ if is_dla and lts not in self.session.get(url).content.decode('utf-8'):
+ raise DLAForAnotherRelease
+
for x in self.session.get(url).content.splitlines():
m = pattern.search(x.decode('utf8'))
View it on GitLab: https://salsa.debian.org/security-tracker-team/security-tracker/-/compare/6917b6e7dd13538889d89bd6fc854a1a297024b8...999e4cdf0d970523f250e3fe4b1a3da949237f6a
--
View it on GitLab: https://salsa.debian.org/security-tracker-team/security-tracker/-/compare/6917b6e7dd13538889d89bd6fc854a1a297024b8...999e4cdf0d970523f250e3fe4b1a3da949237f6a
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-security-tracker-commits/attachments/20220818/da65ea70/attachment-0001.htm>
More information about the debian-security-tracker-commits
mailing list