[debian] Add releaseDate for major releases (fixes #49)
Unfortunately major releases cannot be parse like point releases.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"10": "2019-07-06",
|
||||
"10.1": "2019-09-07",
|
||||
"10.10": "2021-06-19",
|
||||
"10.11": "2021-10-09",
|
||||
@@ -12,6 +13,7 @@
|
||||
"10.7": "2020-12-05",
|
||||
"10.8": "2021-02-06",
|
||||
"10.9": "2021-03-27",
|
||||
"11": "2021-08-14",
|
||||
"11.1": "2021-10-09",
|
||||
"11.2": "2021-12-18",
|
||||
"11.3": "2022-03-26",
|
||||
@@ -54,6 +56,7 @@
|
||||
"5.0.7": "2010-11-27",
|
||||
"5.0.8": "2011-01-22",
|
||||
"5.0.9": "2011-10-01",
|
||||
"6.0": "2011-02-06",
|
||||
"6.0.1": "2011-03-19",
|
||||
"6.0.10": "2014-07-19",
|
||||
"6.0.2": "2011-06-25",
|
||||
@@ -64,6 +67,7 @@
|
||||
"6.0.7": "2013-02-23",
|
||||
"6.0.8": "2013-10-20",
|
||||
"6.0.9": "2014-02-15",
|
||||
"7.0": "2013-05-04",
|
||||
"7.1": "2013-06-15",
|
||||
"7.10": "2016-04-02",
|
||||
"7.11": "2016-06-04",
|
||||
@@ -75,6 +79,7 @@
|
||||
"7.7": "2014-10-18",
|
||||
"7.8": "2015-01-10",
|
||||
"7.9": "2015-09-05",
|
||||
"8": "2015-04-25",
|
||||
"8.1": "2015-06-06",
|
||||
"8.10": "2017-12-09",
|
||||
"8.11": "2018-06-23",
|
||||
@@ -86,6 +91,7 @@
|
||||
"8.7": "2017-01-14",
|
||||
"8.8": "2017-05-06",
|
||||
"8.9": "2017-07-22",
|
||||
"9": "2017-06-17",
|
||||
"9.1": "2017-07-22",
|
||||
"9.10": "2019-09-07",
|
||||
"9.11": "2019-09-08",
|
||||
|
||||
@@ -30,8 +30,30 @@ def clone_repository():
|
||||
ret_code = call(f"git {git_opts} pull --depth 1 origin master", shell=True)
|
||||
exit(-ret_code) if ret_code < 0 else None
|
||||
|
||||
def extract_major_releases(releases):
|
||||
child = subprocess.Popen(
|
||||
f"grep -RhE -A 1 '<define-tag pagetitle>Debian [0-9]+.+</q> released' {REPO_DIR}/english/News "
|
||||
f"| cut -d '<' -f 2 "
|
||||
f"| cut -d '>' -f 2 "
|
||||
f"| grep -v -- '--'",
|
||||
shell=True, stdout=subprocess.PIPE)
|
||||
output = child.communicate()[0].decode('utf-8')
|
||||
|
||||
def extract_releases():
|
||||
is_release_line = True
|
||||
version = None
|
||||
for line in output.split('\n'):
|
||||
if line:
|
||||
if is_release_line:
|
||||
version = line.split(" ")[1]
|
||||
is_release_line = False
|
||||
else:
|
||||
date = line
|
||||
print(f"{date} : {version}")
|
||||
releases[version] = date
|
||||
is_release_line = True
|
||||
|
||||
|
||||
def extract_point_releases(releases):
|
||||
child = subprocess.Popen(
|
||||
f"grep -Rh -B 10 '<define-tag revision>' {REPO_DIR}/english/News "
|
||||
"| grep -Eo '(release_date>(.*)<|revision>(.*)<)' "
|
||||
@@ -42,7 +64,6 @@ def extract_releases():
|
||||
shell=True, stdout=subprocess.PIPE)
|
||||
output = child.communicate()[0].decode('utf-8')
|
||||
|
||||
releases = {}
|
||||
for line in output.split('\n'):
|
||||
if line:
|
||||
parts = line.split(' ')
|
||||
@@ -51,17 +72,18 @@ def extract_releases():
|
||||
print(f"{date} : {version}")
|
||||
releases[version] = date
|
||||
|
||||
return dict(sorted(releases.items()))
|
||||
|
||||
|
||||
def main():
|
||||
print(f"::group::{PRODUCT}")
|
||||
clone_repository()
|
||||
releases = extract_releases()
|
||||
|
||||
releases = {}
|
||||
extract_major_releases(releases)
|
||||
extract_point_releases(releases)
|
||||
print("::endgroup::")
|
||||
|
||||
with open(f"releases/{PRODUCT}.json", "w") as f:
|
||||
f.write(json.dumps(releases, indent=2))
|
||||
f.write(json.dumps(dict(sorted(releases.items())), indent=2))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
Reference in New Issue
Block a user