mirror of
https://github.com/Kitware/CMake.git
synced 2026-03-10 11:29:09 -05:00
Merge topic 'ctest-submit-cleanup'
afd6c2966ecmCTestSubmitHandler: Move internal helpers to anonymous namespace78f0b2aeedcmCTestSubmitHandler: Make internal method private2a9cfc2da3cmCTestSubmitHandler: Remove unnecessary type alias8f698e1708cmCTestSubmitHandler: Open log file earlier7475921ff8cmCTestSubmitHandler: Inline and remove method called only once Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !10815
This commit is contained in:
@@ -32,9 +32,8 @@
|
||||
|
||||
#define SUBMIT_TIMEOUT_IN_SECONDS_DEFAULT 120
|
||||
|
||||
using cmCTestSubmitHandlerVectorOfChar = std::vector<char>;
|
||||
|
||||
class cmCTestSubmitHandler::ResponseParser : public cmXMLParser
|
||||
namespace {
|
||||
class ResponseParser : public cmXMLParser
|
||||
{
|
||||
public:
|
||||
enum StatusType
|
||||
@@ -96,26 +95,26 @@ private:
|
||||
}
|
||||
};
|
||||
|
||||
static size_t cmCTestSubmitHandlerWriteMemoryCallback(void* ptr, size_t size,
|
||||
size_t nmemb, void* data)
|
||||
size_t cmCTestSubmitHandlerWriteMemoryCallback(void* ptr, size_t size,
|
||||
size_t nmemb, void* data)
|
||||
{
|
||||
int realsize = static_cast<int>(size * nmemb);
|
||||
char const* chPtr = static_cast<char*>(ptr);
|
||||
cm::append(*static_cast<cmCTestSubmitHandlerVectorOfChar*>(data), chPtr,
|
||||
chPtr + realsize);
|
||||
cm::append(*static_cast<std::vector<char>*>(data), chPtr, chPtr + realsize);
|
||||
return realsize;
|
||||
}
|
||||
|
||||
static size_t cmCTestSubmitHandlerCurlDebugCallback(CURL* /*unused*/,
|
||||
curl_infotype /*unused*/,
|
||||
char* chPtr, size_t size,
|
||||
void* data)
|
||||
size_t cmCTestSubmitHandlerCurlDebugCallback(CURL* /*unused*/,
|
||||
curl_infotype /*unused*/,
|
||||
char* chPtr, size_t size,
|
||||
void* data)
|
||||
{
|
||||
cm::append(*static_cast<cmCTestSubmitHandlerVectorOfChar*>(data), chPtr,
|
||||
chPtr + size);
|
||||
cm::append(*static_cast<std::vector<char>*>(data), chPtr, chPtr + size);
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
cmCTestSubmitHandler::cmCTestSubmitHandler(cmCTest* ctest)
|
||||
: Superclass(ctest)
|
||||
, HttpHeaders(ctest->GetCommandLineHttpHeaders())
|
||||
@@ -321,8 +320,8 @@ bool cmCTestSubmitHandler::SubmitUsingHTTP(
|
||||
cmCTestSubmitHandlerCurlDebugCallback);
|
||||
|
||||
/* we pass our 'chunk' struct to the callback function */
|
||||
cmCTestSubmitHandlerVectorOfChar chunk;
|
||||
cmCTestSubmitHandlerVectorOfChar chunkDebug;
|
||||
std::vector<char> chunk;
|
||||
std::vector<char> chunkDebug;
|
||||
::curl_easy_setopt(curl, CURLOPT_FILE, &chunk);
|
||||
::curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &chunkDebug);
|
||||
|
||||
@@ -447,8 +446,7 @@ bool cmCTestSubmitHandler::SubmitUsingHTTP(
|
||||
return true;
|
||||
}
|
||||
|
||||
void cmCTestSubmitHandler::ParseResponse(
|
||||
cmCTestSubmitHandlerVectorOfChar chunk)
|
||||
void cmCTestSubmitHandler::ParseResponse(std::vector<char> chunk)
|
||||
{
|
||||
std::string output;
|
||||
output.append(chunk.begin(), chunk.end());
|
||||
@@ -715,6 +713,9 @@ int cmCTestSubmitHandler::ProcessHandler()
|
||||
return -1;
|
||||
}
|
||||
|
||||
cmGeneratedFileStream ofs;
|
||||
this->StartLogFile("Submit", ofs);
|
||||
|
||||
if (char const* proxy = getenv("HTTP_PROXY")) {
|
||||
this->HTTPProxyType = 1;
|
||||
this->HTTPProxy = proxy;
|
||||
@@ -747,8 +748,6 @@ int cmCTestSubmitHandler::ProcessHandler()
|
||||
" Use HTTP Proxy: " << this->HTTPProxy << std::endl,
|
||||
this->Quiet);
|
||||
}
|
||||
cmGeneratedFileStream ofs;
|
||||
this->StartLogFile("Submit", ofs);
|
||||
|
||||
std::vector<std::string> files;
|
||||
std::string prefix = this->GetSubmitResultsPrefix();
|
||||
@@ -835,7 +834,7 @@ int cmCTestSubmitHandler::ProcessHandler()
|
||||
" Send to group: " << specificGroup << std::endl,
|
||||
this->Quiet);
|
||||
}
|
||||
this->SetLogFile(&ofs);
|
||||
this->LogFile = &ofs;
|
||||
|
||||
std::string url = this->CTest->GetSubmitURL();
|
||||
cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT,
|
||||
|
||||
@@ -37,17 +37,12 @@ public:
|
||||
/** Specify a set of files to submit. */
|
||||
void SelectFiles(std::set<std::string> const& files);
|
||||
|
||||
// handle the cdash file upload protocol
|
||||
int HandleCDashUploadFile(std::string const& file, std::string const& type);
|
||||
|
||||
void SetHttpHeaders(std::vector<std::string> const& v)
|
||||
{
|
||||
this->HttpHeaders.insert(this->HttpHeaders.end(), v.begin(), v.end());
|
||||
}
|
||||
|
||||
private:
|
||||
void SetLogFile(std::ostream* ost) { this->LogFile = ost; }
|
||||
|
||||
/**
|
||||
* Submit file using various ways
|
||||
*/
|
||||
@@ -55,16 +50,14 @@ private:
|
||||
std::vector<std::string> const& files,
|
||||
std::string const& remoteprefix,
|
||||
std::string const& url);
|
||||
void ParseResponse(std::vector<char> chunk);
|
||||
|
||||
using cmCTestSubmitHandlerVectorOfChar = std::vector<char>;
|
||||
|
||||
void ParseResponse(cmCTestSubmitHandlerVectorOfChar chunk);
|
||||
// handle the cdash file upload protocol
|
||||
int HandleCDashUploadFile(std::string const& file, std::string const& type);
|
||||
|
||||
std::string GetSubmitResultsPrefix();
|
||||
int GetSubmitInactivityTimeout();
|
||||
|
||||
class ResponseParser;
|
||||
|
||||
std::string HTTPProxy;
|
||||
int HTTPProxyType = 0;
|
||||
std::string HTTPProxyAuth;
|
||||
|
||||
Reference in New Issue
Block a user