Commit a13f53ae authored by jan.koester's avatar jan.koester
Browse files

test

parent b1662c97
Loading
Loading
Loading
Loading
+20 −2
Original line number Diff line number Diff line
@@ -75,10 +75,28 @@ int main(int argc, char *argv[]) {
        std::cout << "Loading config from: " << configPath << std::endl;
        webedit::Config config(configPath);

        // Initialize database
        // Initialize database (with retry for container network setup)
        std::cout << "Initializing database: " << config.getDbDriver()
                  << " -> " << config.getDbConnection() << std::endl;
        webedit::Database db(config.getDbDriver(), config.getDbConnection());
        webedit::Database *dbPtr = nullptr;
        const int maxRetries = 10;
        const int retrySec = 3;
        for (int attempt = 1; attempt <= maxRetries; attempt++) {
            try {
                dbPtr = new webedit::Database(config.getDbDriver(), config.getDbConnection());
                break;
            } catch (const std::exception &e) {
                std::cerr << "Database connection failed (attempt " << attempt
                          << "/" << maxRetries << "): " << e.what() << std::endl;
                if (attempt == maxRetries) {
                    std::cerr << "Error: " << e.what() << std::endl;
                    return EXIT_FAILURE;
                }
                std::cerr << "  retrying in " << retrySec << "s..." << std::endl;
                sleep(retrySec);
            }
        }
        webedit::Database &db = *dbPtr;
        db.initTables();

        // Load editor widget plugins