71 lines
2.2 KiB
Python
71 lines
2.2 KiB
Python
#!/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
|