Unable to get notebook filename on JupyterLab 3.0
kangwoo opened this issue · 0 comments
kangwoo commented
/kind bug
What steps did you take and what happened:
- The following code was executed in JupyterLab 3.0.
import uuid
from kubeflow import fairing
CONTAINER_REGISTRY = 'kangwoo'
namespace = 'admin'
job_name = f'fairing-notebook-append-job-{uuid.uuid4().hex[:4]}'
fairing.config.set_builder('append', registry=CONTAINER_REGISTRY, image_name="fairing-notebook-append-job",
base_image="tensorflow/tensorflow:2.1.0-py3")
fairing.config.set_deployer('job', namespace=namespace, job_name=job_name, cleanup=False, stream_log=True)
fairing.config.run()
- Error
~/.local/lib/python3.6/site-packages/kubeflow/fairing/preprocessors/converted_notebook.py in preprocess(self)
119 exporter = nbconvert.PythonExporter()
120 exporter.register_preprocessor(self.notebook_preprocessor, enabled=True)
--> 121 contents, _ = exporter.from_filename(self.notebook_file)
122 converted_notebook = Path(self.notebook_file).with_suffix('.py')
123 if converted_notebook.exists() and not self.overwrite:
/usr/local/lib/python3.6/dist-packages/nbconvert/exporters/exporter.py in from_filename(self, filename, resources, **kw)
165 if not 'metadata' in resources or resources['metadata'] == '':
166 resources['metadata'] = ResourcesDict()
--> 167 path, basename = os.path.split(filename)
168 notebook_name = os.path.splitext(basename)[0]
169 resources['metadata']['name'] = notebook_name
/usr/lib/python3.6/posixpath.py in split(p)
105 """Split a pathname. Returns tuple "(head, tail)" where "tail" is
106 everything after the final slash. Either part may be empty."""
--> 107 p = os.fspath(p)
108 sep = _get_sep(p)
109 i = p.rfind(sep) + 1
TypeError: expected str, bytes or os.PathLike object, not NoneType
What did you expect to happen:
Anything else you would like to add:
Utility function does not return file name.
In[]
from kubeflow.fairing.notebook import notebook_util
print(notebook_util.get_notebook_name())
Out[]
None
Environment:
- Fairing version: 1.0.2
- Kubeflow version: 1.2.0
- Minikube version:
- Kubernetes version: 1.20.1
- OS (e.g. from
/etc/os-release
): Ubuntu 20.04.2 LTS
NOTE: