feat(device-core): ship host telemetry and scalable VPS inventory

This commit is contained in:
DCCONSTRUCTIONS
2026-08-23 11:58:58 +03:00
parent 5d58dd6c37
commit ebc264eb60
13 changed files with 1983 additions and 439 deletions
+10 -3
View File
@@ -1104,10 +1104,17 @@ def ensure_service_user(name=SERVICE_USER, home_dir="/var/lib/nodedc-b2-vps"):
def extract_vendor_binary(archive: Path, member_name: str, target: Path, mode=0o755):
with tarfile.open(archive, "r:*") as package:
try:
member = package.getmember(member_name)
except KeyError:
accepted_names = {member_name, f"./{member_name}"}
matches = [
candidate
for candidate in package.getmembers()
if candidate.name in accepted_names
]
if not matches:
die(f"vendor binary member missing: {member_name}")
if len(matches) != 1:
die(f"vendor binary member ambiguous: {member_name}")
member = matches[0]
if not member.isfile() or member.issym() or member.islnk():
die(f"vendor binary member unsafe: {member_name}")
source = package.extractfile(member)