aboutsummaryrefslogtreecommitdiff
path: root/zen/cmds/projectstore.cpp
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2023-02-13 13:02:06 +0000
committerGitHub <[email protected]>2023-02-13 05:02:06 -0800
commit1639507f8d3831322d7da5cfa0c63cd374695ddf (patch)
tree3760a70cdf9fdf749fc38db55ae754e21b050f95 /zen/cmds/projectstore.cpp
parentno sentry report on port conflict (#228) (diff)
downloadarchived-zen-1639507f8d3831322d7da5cfa0c63cd374695ddf.tar.xz
archived-zen-1639507f8d3831322d7da5cfa0c63cd374695ddf.zip
Move knowledge of UE env variable from zenserver to zen command line tool (#227)
* move knowledge of UE env variable from zenserver to zen command line tool * move env-fetching code to GetEnvVariable
Diffstat (limited to 'zen/cmds/projectstore.cpp')
-rw-r--r--zen/cmds/projectstore.cpp35
1 files changed, 35 insertions, 0 deletions
diff --git a/zen/cmds/projectstore.cpp b/zen/cmds/projectstore.cpp
index 8ecdecaaa..e12b85edc 100644
--- a/zen/cmds/projectstore.cpp
+++ b/zen/cmds/projectstore.cpp
@@ -11,6 +11,21 @@ ZEN_THIRD_PARTY_INCLUDES_START
#include <cpr/cpr.h>
ZEN_THIRD_PARTY_INCLUDES_END
+namespace {
+
+using namespace std::literals;
+
+const std::string DefaultCloudAccessTokenEnvVariableName(
+#if ZEN_PLATFORM_WINDOWS
+ "UE-CloudDataCacheAccessToken"sv
+#endif
+#if ZEN_PLATFORM_LINUX || ZEN_PLATFORM_MAC
+ "UE_CloudDataCacheAccessToken"sv
+#endif
+);
+
+} // namespace
+
///////////////////////////////////////
DropProjectCommand::DropProjectCommand()
@@ -297,6 +312,12 @@ ExportOplogCommand::ExportOplogCommand()
m_Options.add_option("cloud", "", "access-token", "Cloud Storage access token", cxxopts::value(m_CloudAccessToken), "<accesstoken>");
m_Options.add_option("cloud",
"",
+ "access-token-env",
+ "Name of environment variable that holds the cloud Storage access token",
+ cxxopts::value(m_CloudAccessTokenEnv)->default_value(DefaultCloudAccessTokenEnvVariableName),
+ "<envvariable>");
+ 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),
@@ -493,6 +514,10 @@ ExportOplogCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** arg
{
Writer.AddString("access-token"sv, m_CloudAccessToken);
}
+ if (!m_CloudAccessTokenEnv.empty())
+ {
+ Writer.AddString("access-token-env"sv, m_CloudAccessTokenEnv);
+ }
if (m_DisableBlocks)
{
Writer.AddBool("disableblocks"sv, true);
@@ -554,6 +579,12 @@ ImportOplogCommand::ImportOplogCommand()
m_Options
.add_option("cloud", "", "openid-provider", "Cloud Storage openid provider", cxxopts::value(m_CloudOpenIdProvider), "<provider>");
m_Options.add_option("cloud", "", "access-token", "Cloud Storage access token", cxxopts::value(m_CloudAccessToken), "<accesstoken>");
+ m_Options.add_option("cloud",
+ "",
+ "access-token-env",
+ "Name of environment variable that holds the cloud Storage access token",
+ cxxopts::value(m_CloudAccessTokenEnv)->default_value(DefaultCloudAccessTokenEnvVariableName),
+ "<envvariable>");
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>");
@@ -718,6 +749,10 @@ ImportOplogCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** arg
{
Writer.AddString("access-token"sv, m_CloudAccessToken);
}
+ if (!m_CloudAccessTokenEnv.empty())
+ {
+ Writer.AddString("access-token-env"sv, m_CloudAccessTokenEnv);
+ }
}
Writer.EndObject(); // "cloud"
SourceDescription = fmt::format("[cloud] '{}/{}/{}/{}'", m_CloudUrl, m_CloudNamespace, m_CloudBucket, m_CloudKey);