From 25d8ba579c3a9f77402b5e94685c14574bb2fe54 Mon Sep 17 00:00:00 2001 From: JessicaXYWang <108437381+JessicaXYWang@users.noreply.github.com> Date: Fri, 15 Mar 2024 13:52:16 -0700 Subject: [PATCH 1/3] raise error with documentation link --- .../synapse/ml/core/platform/Platform.py | 39 ++++++++++--------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/core/src/main/python/synapse/ml/core/platform/Platform.py b/core/src/main/python/synapse/ml/core/platform/Platform.py index c7e4cc8d8a..738f7e7bec 100644 --- a/core/src/main/python/synapse/ml/core/platform/Platform.py +++ b/core/src/main/python/synapse/ml/core/platform/Platform.py @@ -47,27 +47,28 @@ def running_on_databricks(): def find_secret(secret_name, keyvault): - if running_on_synapse(): - from notebookutils.mssparkutils.credentials import getSecret - - return getSecret(keyvault, secret_name) - elif running_on_synapse_internal(): - from notebookutils.mssparkutils.credentials import getSecret - - keyVaultURL = f"https://{keyvault}.vault.azure.net/" - return getSecret(keyVaultURL, secret_name) - elif running_on_databricks(): - from pyspark.sql import SparkSession - from pyspark.dbutils import DBUtils - - spark = SparkSession.builder.getOrCreate() - dbutils = DBUtils(spark) - return dbutils.secrets.get(scope=keyvault, key=secret_name) - else: + try: + if running_on_synapse(): + from notebookutils.mssparkutils.credentials import getSecret + + return getSecret(keyvault, secret_name) + elif running_on_synapse_internal(): + from notebookutils.mssparkutils.credentials import getSecret + + keyVaultURL = f"https://{keyvault}.vault.azure.net/" + return getSecret(keyVaultURL, secret_name) + elif running_on_databricks(): + from pyspark.sql import SparkSession + from pyspark.dbutils import DBUtils + + spark = SparkSession.builder.getOrCreate() + dbutils = DBUtils(spark) + return dbutils.secrets.get(scope=keyvault, key=secret_name) + except: raise RuntimeError( f"Could not find {secret_name} in keyvault {keyvault}. " f"If you are trying to use the mmlspark-buil-keys keyvault, you cant! " - f"You need to make your own keyvaukt with secrets or replace this call with a string. " + f"You need to make your own keyvault with secrets or replace this call with a string. " f"Make sure your notebook has access to a " f"keyvault named {keyvault} which contains a secret named {secret_name}. " f"On synapse, use a linked service keyvault, " @@ -76,6 +77,8 @@ def find_secret(secret_name, keyvault): f"If you want to avoid making a keyvault, replace this call to find secret with your secret as a string " f"like my_secret = 'jdiej38dnal.....'. Note that this has " f"security implications for publishing and sharing notebooks!" + f"Please see the documentation for more information." + f"https://microsoft.github.io/SynapseML/docs/Get%20Started/Set%20up%20Cognitive%20Services/" ) From 705bc1a6d865ef9ca75c9b9cb9c9f140e7c64e9b Mon Sep 17 00:00:00 2001 From: JessicaXYWang <108437381+JessicaXYWang@users.noreply.github.com> Date: Fri, 15 Mar 2024 14:54:16 -0700 Subject: [PATCH 2/3] minor format --- core/src/main/python/synapse/ml/core/platform/Platform.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/python/synapse/ml/core/platform/Platform.py b/core/src/main/python/synapse/ml/core/platform/Platform.py index 738f7e7bec..ee3059bc9f 100644 --- a/core/src/main/python/synapse/ml/core/platform/Platform.py +++ b/core/src/main/python/synapse/ml/core/platform/Platform.py @@ -76,8 +76,8 @@ def find_secret(secret_name, keyvault): f"on fabric make sure your azure identity can access your azure keyvault. " f"If you want to avoid making a keyvault, replace this call to find secret with your secret as a string " f"like my_secret = 'jdiej38dnal.....'. Note that this has " - f"security implications for publishing and sharing notebooks!" - f"Please see the documentation for more information." + f"security implications for publishing and sharing notebooks! " + f"Please see the documentation for more information. " f"https://microsoft.github.io/SynapseML/docs/Get%20Started/Set%20up%20Cognitive%20Services/" ) From f91846c06559c82f8fb1db460ec77f66905e14aa Mon Sep 17 00:00:00 2001 From: JessicaXYWang <108437381+JessicaXYWang@users.noreply.github.com> Date: Mon, 18 Mar 2024 00:15:56 -0700 Subject: [PATCH 3/3] add raise error on other platforms --- core/src/main/python/synapse/ml/core/platform/Platform.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/src/main/python/synapse/ml/core/platform/Platform.py b/core/src/main/python/synapse/ml/core/platform/Platform.py index ee3059bc9f..c922eca7e1 100644 --- a/core/src/main/python/synapse/ml/core/platform/Platform.py +++ b/core/src/main/python/synapse/ml/core/platform/Platform.py @@ -64,6 +64,8 @@ def find_secret(secret_name, keyvault): spark = SparkSession.builder.getOrCreate() dbutils = DBUtils(spark) return dbutils.secrets.get(scope=keyvault, key=secret_name) + else: + raise RuntimeError("get secret is not supported on this platform.") except: raise RuntimeError( f"Could not find {secret_name} in keyvault {keyvault}. "