38 lines
1.0 KiB
Python
38 lines
1.0 KiB
Python
#!/usr/bin/python3
|
|
# -*- coding: utf-8 -*-
|
|
|
|
import json
|
|
import os
|
|
import sys
|
|
|
|
DEBIAN_VERSION_MAP = {8: "jessie", 9: "stretch", 10: "buster", 11: "bullseye"}
|
|
|
|
|
|
def debian_distribution():
|
|
with open("/etc/debian_version") as f:
|
|
debian_version_string = f.read().strip("\n")
|
|
if debian_version_string.endswith("/sid"):
|
|
return debian_version_string.strip("/sid")
|
|
try:
|
|
major, minor = debian_version_string.split(".")
|
|
release_number = int(major)
|
|
return DEBIAN_VERSION_MAP[release_number]
|
|
except ValueError:
|
|
return None
|
|
|
|
|
|
def debian_distribution_docker_safe():
|
|
debian_version = debian_distribution()
|
|
if debian_version == "bullseye":
|
|
json.dump({"version": "bullseye", "safe_version": "buster"}, sys.stdout)
|
|
elif debian_version is not None:
|
|
json.dump(
|
|
{"version": debian_version, "safe_version": debian_version}, sys.stdout
|
|
)
|
|
else:
|
|
json.dump("", sys.stdout)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
debian_distribution_docker_safe()
|