Forum Discussion

mmilosanovic's avatar
mmilosanovic
Advocate IV
1 year ago

Some methods in notebooks do not work when executed from Data Pipelines deployed via SPN

Hi,

 

I already created the ticket with Microsoft (2504161420001430) and also opened the issue here and also seems to be related to this issue here.

 

`notebookutils.runtime.context.get("currentWorkspaceName")` works when executed directly from the Notebook, but does not work when executed from the DataPipeline which was deployed in another workspace using Service Principal via Fabric Core APIs (Create Item - https://learn.microsoft.com/en-us/rest/api/fabric/core/items/create-item?tabs=HTTP).

If I reopen the notebook with my personal account and rerun it again from the DataPipeline, then it works. This implies that the issue is coming from the service principal somehow losing permissions/token and is not able to read the current workspace name where it is running in from the notebookutils runtime context.

What I noticed is that this issue is also present for other built-in methods in Fabric. For example: `notebookutils.lakehouse.get()` and `synapsesql()`. Details can be found here: https://github.com/microsoft/fabric-cicd/issues/202#issuecomment-2797384465. Same approach is being followed in the fabric-cicd library and it is using SPN auth + Fabric Core Create Item APIs (as already mentioned and referenced above).

 

Did anyone else experience the same/similar issues?

 

Best regards,

Milos

38 Replies