aboutsummaryrefslogtreecommitdiff
path: root/src/zen/cmds/projectstore.cpp
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2023-08-09 13:27:52 +0200
committerGitHub <[email protected]>2023-08-09 13:27:52 +0200
commit6132ee22dba626e221e615addb780b5f2a5a7bf9 (patch)
tree410857cb939611cd8353eb347ed266734e907a90 /src/zen/cmds/projectstore.cpp
parenthandle exception in asio header parsing (#348) (diff)
downloadarchived-zen-6132ee22dba626e221e615addb780b5f2a5a7bf9.tar.xz
archived-zen-6132ee22dba626e221e615addb780b5f2a5a7bf9.zip
Add `--assume-http2` option to cloud style import/export command to use a HTTP/2 endpoint without without HTTP/1.1 upgrade (#347)
Diffstat (limited to 'src/zen/cmds/projectstore.cpp')
-rw-r--r--src/zen/cmds/projectstore.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/zen/cmds/projectstore.cpp b/src/zen/cmds/projectstore.cpp
index 39976e333..f7dc82569 100644
--- a/src/zen/cmds/projectstore.cpp
+++ b/src/zen/cmds/projectstore.cpp
@@ -360,6 +360,12 @@ ExportOplogCommand::ExportOplogCommand()
"<envvariable>");
m_Options.add_option("cloud",
"",
+ "assume-http2",
+ "Assume that the cloud endpoint is a HTTP/2 endpoint skipping HTTP/1.1 upgrade handshake",
+ cxxopts::value(m_CloudAssumeHttp2),
+ "<assumehttp2>");
+ m_Options.add_option("cloud",
+ "",
"disabletempblocks",
"Disable temp block creation and upload blocks without waiting for oplog container to be uploaded",
cxxopts::value(m_CloudDisableTempBlocks),
@@ -581,6 +587,10 @@ ExportOplogCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** arg
Writer.AddString("access-token-env"sv, m_CloudAccessTokenEnv);
}
}
+ if (m_CloudAssumeHttp2)
+ {
+ Writer.AddBool("assumehttp2"sv, true);
+ }
if (m_DisableBlocks)
{
Writer.AddBool("disableblocks"sv, true);
@@ -648,6 +658,12 @@ ImportOplogCommand::ImportOplogCommand()
"Name of environment variable that holds the cloud Storage access token",
cxxopts::value(m_CloudAccessTokenEnv)->default_value(DefaultCloudAccessTokenEnvVariableName),
"<envvariable>");
+ m_Options.add_option("cloud",
+ "",
+ "assume-http2",
+ "Assume that the cloud endpoint is a HTTP/2 endpoint skipping HTTP/1.1 upgrade handshake",
+ cxxopts::value(m_CloudAssumeHttp2),
+ "<assumehttp2>");
m_Options.add_option("", "", "zen", "Zen service upload address", cxxopts::value(m_ZenUrl), "<url>");
m_Options.add_option("zen", "", "source-project", "Zen source project name", cxxopts::value(m_ZenProjectName), "<sourceprojectid>");
@@ -834,6 +850,10 @@ ImportOplogCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** arg
Writer.AddString("access-token-env"sv, m_CloudAccessTokenEnv);
}
}
+ if (m_CloudAssumeHttp2)
+ {
+ Writer.AddBool("assumehttp2"sv, true);
+ }
}
Writer.EndObject(); // "cloud"
SourceDescription = fmt::format("[cloud] {}/{}/{}/{}", m_CloudUrl, m_CloudNamespace, m_CloudBucket, m_CloudKey);