Initial server source import
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
import sys
|
||||
|
||||
sys.dont_write_bytecode = True
|
||||
|
||||
import os
|
||||
import sqlite3
|
||||
import tempfile
|
||||
|
||||
from keycheckers.keycheck_common import (
|
||||
append_checked,
|
||||
append_status,
|
||||
record_cached_keycheck_occurrence,
|
||||
)
|
||||
from keycheck_runner import ingest_keycheck_results_to_db
|
||||
from scanner_db import ScannerDB
|
||||
from runtime_security import ensure_private_directory
|
||||
|
||||
|
||||
def main():
|
||||
for key in ('SCANNER_DB_URL', 'DATABASE_URL', 'TRUF_MANAGED_POSTGRES_DSN', 'KEYCHECK_DB_URL'):
|
||||
os.environ.pop(key, None)
|
||||
with tempfile.TemporaryDirectory(prefix="keycheck-accounting-") as tmp:
|
||||
db_path = os.path.join(tmp, "scanner.db")
|
||||
output_dir = os.path.join(tmp, "keychecks", "openai")
|
||||
ensure_private_directory(output_dir, reject_reparse=True)
|
||||
|
||||
db = ScannerDB(db_path=db_path)
|
||||
db.close()
|
||||
|
||||
alive_file = os.path.join(output_dir, "openaiAlive.txt")
|
||||
checked_file = os.path.join(output_dir, "openaiChecked.txt")
|
||||
key = "sk-test-keycheck-accounting-1234567890"
|
||||
append_status(alive_file, key, "ALIVE", "fixture", "smoke")
|
||||
append_checked(checked_file, key, "ALIVE")
|
||||
|
||||
os.environ["KEYCHECK_DB_PATH"] = db_path
|
||||
os.environ["KEYCHECK_OUTPUT_DIR"] = output_dir
|
||||
os.environ["KEYCHECK_SERVICE"] = "openai"
|
||||
|
||||
finding = {"DetectorName": "OpenAI", "Raw": key}
|
||||
ok = record_cached_keycheck_occurrence("openai", key, "ALIVE", "fixture.jsonl:1", finding, "OpenAI")
|
||||
if not ok:
|
||||
raise SystemExit("cached occurrence write returned false")
|
||||
|
||||
inserted = ingest_keycheck_results_to_db(
|
||||
{"database_path": db_path, "keycheck_dir": os.path.join(tmp, "keychecks")},
|
||||
["openai"],
|
||||
max_rows=10,
|
||||
)
|
||||
if inserted != 1:
|
||||
raise SystemExit(f"unexpected ingest count: {inserted}")
|
||||
|
||||
conn = sqlite3.connect(db_path)
|
||||
try:
|
||||
row = conn.execute(
|
||||
"SELECT service, status, status_group, metadata_json FROM keycheck_results"
|
||||
).fetchone()
|
||||
finally:
|
||||
conn.close()
|
||||
if not row:
|
||||
raise SystemExit("missing keycheck_results row")
|
||||
service, status, status_group, metadata_json = row
|
||||
if (service, status, status_group) != ("openai", "ALIVE", "alive"):
|
||||
raise SystemExit(f"unexpected row status: {(service, status, status_group)}")
|
||||
if "cached_status" not in metadata_json:
|
||||
raise SystemExit("missing cached_status metadata")
|
||||
print("keycheck accounting smoke ok")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user