File indexing completed on 2023-05-30 09:06:29
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2011 Dennis Nienhüser <nienhueser@kde.org> 0004 // 0005 0006 #include "jobmanager.h" 0007 #include "logger.h" 0008 #include "upload.h" 0009 0010 #include <QCoreApplication> 0011 #include <QDebug> 0012 0013 void usage(const QString &app) 0014 { 0015 qDebug() << "Usage: " << app << "[options] regions.xml log.sqlite [resume-id]"; 0016 qDebug() << "\nOptions:"; 0017 qDebug() << "\t-h, --help................. Show this help"; 0018 qDebug() << "\t-cd, --cache-data.......... Do not delete downloaded .osm.pbf and converted .tar.gz files after a successful conversion and upload"; 0019 qDebug() << "\t-nu, --no-uploads.......... Do not upload converted files to files.kde.org"; 0020 } 0021 0022 int main(int argc, char *argv[]) 0023 { 0024 QCoreApplication app(argc, argv); 0025 0026 QStringList arguments; 0027 bool cacheData(false); 0028 bool uploadFiles(true); 0029 for (int i=1; i<argc; ++i) { 0030 QString const arg = argv[i]; 0031 if (arg == QLatin1String("-h") || arg == QLatin1String("--help")) { 0032 usage(argv[0]); 0033 return 0; 0034 } else if (arg == QLatin1String("-cd") || arg == QLatin1String("--cache-data")) { 0035 cacheData = true; 0036 } else if (arg == QLatin1String("-nu") || arg == QLatin1String("--no-uploads")) { 0037 uploadFiles = false; 0038 } else { 0039 arguments << arg; 0040 } 0041 } 0042 0043 if (arguments.size() < 2) { 0044 usage(argv[0]); 0045 return 1; 0046 } 0047 0048 Logger::instance().setFilename(arguments.at(1)); 0049 0050 QFileInfo tempDir = QFileInfo(QDir::tempPath(), "osm-sisyphus"); 0051 JobParameters parameters; 0052 parameters.setBase(QDir(tempDir.absoluteFilePath())); 0053 parameters.setCacheData(cacheData); 0054 0055 Upload::instance().setJobParameters(parameters); 0056 Upload::instance().setUploadFiles(uploadFiles); 0057 0058 JobManager manager; 0059 manager.setRegionsFile(arguments.at(0)); 0060 manager.setJobParameters(parameters); 0061 if (arguments.size() == 3) { 0062 manager.setResumeId(arguments.at(2)); 0063 } 0064 manager.run(); 0065 0066 return app.exec(); 0067 }