make(Kernel::class)->bootstrap(); if (DB::connection()->getDatabaseName() !== 'investemoz') { fwrite(STDERR, "Refusing unexpected active database target.\n"); exit(20); } $config = config('database.connections.pgsql'); $command = [ 'C:/Program Files/PostgreSQL/17/bin/pg_dump.exe', '--host='.$config['host'], '--port='.$config['port'], '--username='.$config['username'], '--format=custom', '--no-owner', '--no-privileges', '--file='.$argv[1], $config['database'], ]; $environment = getenv(); $environment['PGPASSWORD'] = $config['password']; $pipes = []; $process = proc_open($command, [0 => ['pipe', 'r'], 1 => ['pipe', 'w'], 2 => ['pipe', 'w']], $pipes, dirname(__DIR__), $environment, ['bypass_shell' => true]); fclose($pipes[0]); $stdout = stream_get_contents($pipes[1]); fclose($pipes[1]); $stderr = stream_get_contents($pipes[2]); fclose($pipes[2]); $exitCode = proc_close($process); if ($exitCode !== 0) { fwrite(STDERR, 'pg_dump failed: '.trim($stderr)."\n"); exit($exitCode); } echo "Backup completed for investemoz.\n";