Add requirements.txt.php

This commit is contained in:
git 2026-01-09 09:14:04 +00:00
parent 16304caac4
commit 13d1fc2229

33
requirements.txt.php Normal file
View File

@ -0,0 +1,33 @@
<?php
// Setup PDO
$dsn = "mysql:unix_socket=/var/run/mysqld/mysqld.sock;dbname=SYS_PRD_BND;charset=utf8mb4";
$options = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
];
try {
$pdo = new PDO($dsn, "root", "", $options);
// Fetch dependencies from PyPi table
// Note: We select LibName. If AliasName represents a specific version or URI, it can be appended.
$stmt = $pdo->query("SELECT LibName, AliasName FROM PyPi ORDER BY LibName");
$requirements = [];
foreach ($stmt as $row) {
// Standard requirements.txt format is usually "PackageName" or "PackageName==Version"
// If AliasName is used for versioning, you could use: $row['LibName'] . "==" . $row['AliasName']
$requirements[] = $row['LibName'];
}
// Build requirements.txt content (Plain Text, one per line)
$output = implode("\n", $requirements);
// Write to file (stdout for Makefile redirection)
file_put_contents('php://stdout', $output . "\n");
file_put_contents("php://stderr", "✅ requirements.txt generated successfully.\n");
} catch (PDOException $e) {
file_put_contents("php://stderr", "❌ Database error: " . $e->getMessage() . "\n");
}