tis-audit-session-setup-status
Paquet d’installation silencieuse pour tis-audit-session-setup-status
0-26
- package: tis-audit-session-setup-status
- version: 0-26
- maintainer: Tranquilit
- licence: ©
- target_os: all
- architecture: all
- signature_date:
- size: 8.64 Ko
package : tis-audit-session-setup-status
version : 0-26
architecture : all
section : base
priority : optional
name :
categories :
maintainer : Tranquilit
description : Package for Audit "session-setup" status in sessions
depends :
conflicts :
maturity : PROD
locale :
target_os : all
min_wapt_version :
sources :
installed_size :
impacted_process :
description_fr : Paquet pour l'audit de l'état "session-setup" dans les sessions
description_pl :
description_de :
description_es :
description_pt :
description_it :
description_nl :
description_ru :
audit_schedule : 1h
editor :
keywords : audit
licence : ©
homepage :
package_uuid : 76c371b6-8f62-4ce3-a607-9b0edb13c0ec
valid_from :
valid_until :
forced_install_on :
changelog :
min_os_version :
max_os_version :
icon_sha256sum : 7f00fc99ce8f9f34ed57f77501e4e635afaef7809c99755f6f108cdf53c5f955
signer : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date : 2025-11-01T22:35:28.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature : qFIFbz093sPiWxPBY4Jj5frrUix1my8SKd40v58wmIns6l4LilcADbtcK1Q9cWBPsE9RTF7nr63hdPd9P12yeBcc98uUbcRwCJTNNkTa1Ukr8vXqyoks3gJlk9N1eQLjMoSP4Oln9zzJxqgpRAFet23J8eMYGa/XtTKj1kldolDfAgUB4oxm7phLD948MlRYcLN/2aR/MEkmS0N7J2fBtUKBeyrshQ+kZkP6pCIgDTcT3ECUvlb2FN7JcU1jGEFRc3wyAsIU1+L5VR71NMhfu00OCMRX31oh+tILvq168kA5ryW+fUb2LXRROcO//UfwLIPbBLsbevo8g4U/1WRvBw==
# -*- coding: utf-8 -*-
from setuphelpers import *
import platform
json_file = ".session_setup_user.json"
def install():
pass
def session_setup():
dict_package_user={}
r = WAPT.waptsessiondb.query('select * from wapt_sessionsetup ')
for u in r:
dict_package_user[u['package_uuid']] = u
data_dict = {}
in_error = False
for u in WAPT.waptpublicdb.query("select distinct l.package , * from wapt_publicstatus l where install_date is not null and uninstall_date is null order by install_date desc"):
if u['package'] == control.package:
continue
public_status = WAPT.waptpublicdb.query('select * from wapt_publicstatus where package_uuid=? and install_date is not null and uninstall_date is null order by install_date desc',[u['package_uuid']],one=True)
if public_status:
if public_status.get('setuppy','') and 'def session_setup():' in public_status.get('setuppy','') :
if u['package_uuid'] in dict_package_user:
data_dict[u['package']] = dict_package_user[u['package_uuid']]
if not dict_package_user[u['package_uuid']]['install_status'] in ['OK','RETRY','RERUN']:
in_error=True
else:
data_dict[u['package']] = {'package': u['package'], 'version': u['version'], u['architecture']: u['architecture'], 'install_status': 'PENDING'}
if platform.system() == 'Windows':
json_path = makepath(os.environ["USERPROFILE"], json_file)
else:
json_path = makepath(os.environ['HOME'], json_file)
# if isfile(json_path):
# remove_file(json_path)
print(f"Writing: {json_path}")
remove_file(json_path)
json_write_file(json_path, data_dict)
set_file_hidden(json_path)
return "RERUN"
def audit():
audited_data_user = {}
audited_data_package = {}
if platform.system() == 'Windows':
profs = [u["profile_path"] for u in get_local_profiles() if not r"C:\WINDOWS".lower() in u["profile_path"].lower()]
else:
import pwd
profs = [u.pw_dir for u in pwd.getpwall()]
for p in profs:
json_path = makepath(p, json_file)
if not isfile(json_path):
#print(f"session-setup have NOT been run for the profile_path: {p}")
continue
try:
user_status = "OK"
#print(f"session-setup have been run for the profile_path: {p}")
data_dict = json_load_file(json_path)
username = [pkg.get("username") for pkg in data_dict.values() if "username" in pkg][0]
audited_data_user[username] = data_dict
for u in data_dict:
if not u in audited_data_package:
audited_data_package[u] = {"username":{}, 'status':"OK"}
audited_data_package[u]['username'][username] = data_dict[u]
if not data_dict[u]['install_status'] in ['OK','RETRY','RERUN',"PENDING"]:
user_status = "ERROR"
audited_data_package[u]['status'] = 'ERROR'
audited_data_user[username] = {"packages":audited_data_user[username],"status":user_status}
except:
pass
audited_data_user = {"users":audited_data_user , "status": "ERROR" if [u for u, ud in audited_data_user.items() if str(ud.get("status", "")).upper() == "ERROR"] else "OK" }
audited_data_package = {"packages":audited_data_package , "status": "ERROR" if [u for u, ud in audited_data_package.items() if str(ud.get("status", "")).upper() == "ERROR"] else "OK" }
WAPT.write_audit_data_if_changed("audit-session-setup", "sort_by_user", audited_data_user)
WAPT.write_audit_data_if_changed("audit-session-setup", "sort_by_package", audited_data_package)
return "OK"
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
c03551fa047f108a96df85a8a2c0b1d8c53c313c485c2bec50b8c56ab22f8a6b : WAPT/control
7f00fc99ce8f9f34ed57f77501e4e635afaef7809c99755f6f108cdf53c5f955 : WAPT/icon.png
0cf46af05cc2a669f29c5ed335d855d63b3a9f51244b3a3d3f25442179232282 : luti.json
442e6cc82ea8b486074ebc08e1c569459a6ed384c3470b7f7f5784222fd3cdb7 : setup.py