#!/usr/bin/python3 import configparser import requests from sqlmodel import Field, SQLModel, Relationship class employee_ordinateur(SQLModel, table=True): employee_id: int | None = Field(default=None, foreign_key="employee.id", primary_key=True) ordinateur_id: int | None = Field(default=None, foreign_key="ordinateur.id", primary_key=True) class employee(SQLModel, table=True): id: int | None = Field(default=None, primary_key=True) first_name: str family_name: str badge_number: str ordinateurs: list["ordinateur"] = Relationship(back_populates="employees", link_model=employee_ordinateur) '''PARTIE EVAL class partition''' class Partition(SQLModel, table=True): id: int | None = Field(default=None, primary_key=True) nom: set[str] = set() fstype: set[str] = set() total_size: set[str] = set() used_space: set[str] = set() class ordinateur(SQLModel, table=True): id: int | None = Field(default=None, primary_key=True) hostname: str = Field(index=True) cpu: str = Field(index=True) cpu_freq_min: str = Field(index=True) cpu_freq_cur: str = Field(index=True) cpu_freq_max: str = Field(index=True) cpu_id: str = Field(index=True) mb_serial: str = Field(index=True) ram_size: str = Field(index=True) ram_gen: str = Field(index=True) sizes: str = Field(index=True) memory_mb: str = Field(index=True) gpu_model: str = Field(index=True) chassis_serial: str = Field(index=True) cpu_cores_nb: str = Field(index=True) cpu_threads_nb: str = Field(index=True) ram_number: str = Field(index=True) ram_slots_nb: str = Field(index=True) mac_address: str = Field(index=True) os: str = Field(index=True) arch: str = Field(index=True) desktop: str = Field(index=True) wm: str = Field(index=True) kernel: str = Field(index=True) partitions: list[Partition] | None = None employees: list["employee"] = Relationship(back_populates="ordinateurs", link_model=employee_ordinateur) def shutdown(): return def status(self): return def link_to_user(self,user): return def remove_user_access(self): return def show_users(self): return #sum=configparser.ConfigParser() #sum.read("/opt/grabber/summary.txt") #sum.sections