canonical / canonical/data-science-stack
Add integration test for `dss create` to check MLflow access
- Dominant language
- Python
- Stars
- 37
- Forks
- 10
- PR merge metrics
- No merged PRs in 30d
Description
### Why it needs to get done
This is needed in order to ensure that created pods can access MLflow. This was initially [suggested here](https://github.com/canonical/data-science-stack/pull/43#discussion_r1558991266) by @misohu in the `dss create` PR.
### What needs to get done
Write an integration test which will create a notebook and then it will run the script to create experiement in MLflow. e.g.
```
import mlflow
c = mlflow.MlflowClient() # You should not need to specify the tracking_uri - it should be populated automatically
print(c.tracking_uri) # should print the in-cluster url for dss's mlflow
c.create_experiment("test-experiment") # Should succeed
```
The idea is to create notebook and then run kubectl exec with that script. Or we could also execute a jupyter notebook from inside the pod (which could be `git clone` and run).
Something [like this](https://github.com/canonical/kfp-operators/blob/6be2104216bafd2e26f68ce967f8be04af781781/self-hosted/pod.yaml#L12-L23) (from [PR](https://github.com/canonical/kfp-operators/pull/415/files)) could also be used to run command from the pod.
### When is the task considered done
There is integration test checking MLflow access.
Contributor guide
Assessment
This issue has not been assessed yet.