From c08ffc01813efe56e4fe1b9225569d8e15a4a7e4 Mon Sep 17 00:00:00 2001 From: ddl-rliu Date: Wed, 17 Jul 2024 12:28:02 -0700 Subject: [PATCH] Add CODE_SNIPPET_URL to config Signed-off-by: ddl-rliu --- packages/common/src/environment/index.ts | 6 +++++ .../ExecutionDetails/ExecutionNodeURL.tsx | 22 +++++++++---------- website/console/env/index.ts | 7 ++++++ 3 files changed, 24 insertions(+), 11 deletions(-) diff --git a/packages/common/src/environment/index.ts b/packages/common/src/environment/index.ts index 82e275c52..78ccdd302 100644 --- a/packages/common/src/environment/index.ts +++ b/packages/common/src/environment/index.ts @@ -33,6 +33,12 @@ export interface Env extends NodeJS.ProcessEnv { * @example MAINTENANCE_MODE="We are currently down for maintenance.\n\nPlease try again later." */ MAINTENANCE_MODE?: string; + + /** + * Controls whether the config object in the inputs/outputs Python code snippet is automatically constructed + * Leave unset to use the config object for endpoint window.location.host + */ + CODE_SNIPPET_USE_AUTO_CONFIG?: string; } /** Represents a plain object where string keys map to values of the same type */ diff --git a/packages/oss-console/src/components/Executions/ExecutionDetails/ExecutionNodeURL.tsx b/packages/oss-console/src/components/Executions/ExecutionDetails/ExecutionNodeURL.tsx index 8cda4de12..42d2c2acd 100644 --- a/packages/oss-console/src/components/Executions/ExecutionDetails/ExecutionNodeURL.tsx +++ b/packages/oss-console/src/components/Executions/ExecutionDetails/ExecutionNodeURL.tsx @@ -11,6 +11,7 @@ import Grid from '@mui/material/Grid'; import Link from '@mui/material/Link'; import { RowExpander } from '../Tables/RowExpander'; import { ScrollableMonospaceText } from '../../common/ScrollableMonospaceText'; +import { env } from '@clients/common/environment'; const StyledScrollableMonospaceText = styled(ScrollableMonospaceText)(({ theme }) => ({ '&>div': { @@ -31,19 +32,18 @@ export const ExecutionNodeURL: React.FC<{ const isHttps = /^https:/.test(window.location.href); const ref = React.useRef(null); - const code = isHttps - ? // https snippet - `from flytekit.remote.remote import FlyteRemote + const config = + env.CODE_SNIPPET_USE_AUTO_CONFIG + ? 'Config.auto()' + : isHttps + ? // https snippet + `Config.for_endpoint("${window.location.host}")` + : // http snippet + `Config.for_endpoint("${window.location.host}", True)`; + const code = `from flytekit.remote.remote import FlyteRemote from flytekit.configuration import Config remote = FlyteRemote( - Config.for_endpoint("${window.location.host}"), -) -remote.get("${dataSourceURI}")` - : // http snippet - `from flytekit.remote.remote import FlyteRemote -from flytekit.configuration import Config -remote = FlyteRemote( - Config.for_endpoint("${window.location.host}", True), + ${config}, ) remote.get("${dataSourceURI}")`; diff --git a/website/console/env/index.ts b/website/console/env/index.ts index 4114cb9a8..16772c23a 100644 --- a/website/console/env/index.ts +++ b/website/console/env/index.ts @@ -77,6 +77,11 @@ const ASSETS_PATH = `${BASE_URL}/assets/`; */ const MAINTENANCE_MODE = process.env.MAINTENANCE_MODE || ''; +/** + * Controls whether the config object in the inputs/outputs Python code snippet is automatically constructed + */ +const CODE_SNIPPET_USE_AUTO_CONFIG = process.env.CODE_SNIPPET_USE_AUTO_CONFIG || ''; + const processEnv = { NODE_ENV, PORT, @@ -86,6 +91,7 @@ const processEnv = { BASE_HREF, DISABLE_CONSOLE_ROUTE_PREFIX, MAINTENANCE_MODE, + CODE_SNIPPET_USE_AUTO_CONFIG, }; export { @@ -101,5 +107,6 @@ export { ADMIN_API, LOCAL_DEV_HOST, MAINTENANCE_MODE, + CODE_SNIPPET_USE_AUTO_CONFIG, processEnv, };