https://kedro.org/ logo
#questions
Title
# questions
t

Tomás Rojas

09/12/2023, 3:18 PM
Hi everyone. I am having problems with
kedro jupyter lab
, it is executing a jupyter lab environment but it does not have the catalog variable. Idk what is happening or how to resolve it. When I run
! which python
I get the env that is supposed to be.
I noticed the terminal gives me this:
Copy code
ValueError: Given configuration path either does not exist or is not a valid directory: absolute_path_to_kedro_project/conf/local
d

datajoely

09/12/2023, 3:37 PM
are you in the right directory? It will only work if you are
t

Tomás Rojas

09/12/2023, 3:37 PM
I am in the main project directory
not in
notebooks
, in the one before that
d

datajoely

09/12/2023, 3:49 PM
hmm
if you do
kedro run
from that directory do you get an error?
t

Tomás Rojas

09/12/2023, 4:03 PM
Lee me check
yep
I get the same error
this is a github repository I have that I did not create in this machine
maybe it has to do with that(?)
d

datajoely

09/12/2023, 4:06 PM
what’s the error?
oh sorry you posted it
t

Tomás Rojas

09/12/2023, 4:07 PM
yep, again the one claiming the path does not exists
but now for conf/local
ah, yeah exactly the same error
Copy code
╭─────────────────────────────── Traceback (most recent call last) ───────────────────────────────╮
│ /home/tomasrojasc/.local/bin/kedro:8 in <module>                                                │
│                                                                                                 │
│   5 from kedro.framework.cli import main                                                        │
│   6 if __name__ == '__main__':                                                                  │
│   7 │   sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])                        │
│ ❱ 8 │   sys.exit(main())                                                                        │
│   9                                                                                             │
│                                                                                                 │
│ /home/tomasrojasc/.local/lib/python3.8/site-packages/kedro/framework/cli/cli.py:211 in main     │
│                                                                                                 │
│   208 │   """                                                                                   │
│   209 │   _init_plugins()                                                                       │
│   210 │   cli_collection = KedroCLI(project_path=Path.cwd())                                    │
│ ❱ 211 │   cli_collection()                                                                      │
│   212                                                                                           │
│                                                                                                 │
│ /usr/lib/python3/dist-packages/click/core.py:764 in __call__                                    │
│                                                                                                 │
│ /home/tomasrojasc/.local/lib/python3.8/site-packages/kedro/framework/cli/cli.py:139 in main     │
│                                                                                                 │
│   136 │   │   )                                                                                 │
│   137 │   │                                                                                     │
│   138 │   │   try:                                                                              │
│ ❱ 139 │   │   │   super().main(                                                                 │
│   140 │   │   │   │   args=args,                                                                │
│   141 │   │   │   │   prog_name=prog_name,                                                      │
│   142 │   │   │   │   complete_var=complete_var,                                                │
│                                                                                                 │
│ /usr/lib/python3/dist-packages/click/core.py:717 in main                                        │
│                                                                                                 │
│ /usr/lib/python3/dist-packages/click/core.py:1137 in invoke                                     │
│                                                                                                 │
│ /usr/lib/python3/dist-packages/click/core.py:956 in invoke                                      │
│                                                                                                 │
│ /usr/lib/python3/dist-packages/click/core.py:555 in invoke                                      │
│                                                                                                 │
│ /home/tomasrojasc/.local/lib/python3.8/site-packages/kedro/framework/cli/project.py:450 in run  │
│                                                                                                 │
│   447 │   node_names = node_names + nodes_names                                                 │
│   448 │   load_version = {**load_version, **load_versions}                                      │
│   449 │                                                                                         │
│ ❱ 450 │   with KedroSession.create(                                                             │
│   451 │   │   env=env, conf_source=conf_source, extra_params=params                             │
│   452 │   ) as session:                                                                         │
│   453 │   │   session.run(                                                                      │
│                                                                                                 │
│ /home/tomasrojasc/.local/lib/python3.8/site-packages/kedro/framework/session/session.py:194 in  │
│ create                                                                                          │
│                                                                                                 │
│   191 │   │   session._store.update(session_data)                                               │
│   192 │   │                                                                                     │
│   193 │   │   # We need ConfigLoader and env to setup logging correctly                         │
│ ❱ 194 │   │   session._setup_logging()                                                          │
│   195 │   │   session_data.update(**_describe_git(session._project_path))                       │
│   196 │   │   session._store.update(session_data)                                               │
│   197                                                                                           │
│                                                                                                 │
│ /home/tomasrojasc/.local/lib/python3.8/site-packages/kedro/framework/session/session.py:212 in  │
│ _setup_logging                                                                                  │
│                                                                                                 │
│   209 │   def _setup_logging(self) -> None:                                                     │
│   210 │   │   """Register logging specified in logging directory."""                            │
│   211 │   │   try:                                                                              │
│ ❱ 212 │   │   │   logging_config = self._get_logging_config()                                   │
│   213 │   │   except MissingConfigException:                                                    │
│   214 │   │   │   self._logger.debug(                                                           │
│   215 │   │   │   │   "No project logging configuration loaded; "                               │
│                                                                                                 │
│ /home/tomasrojasc/.local/lib/python3.8/site-packages/kedro/framework/session/session.py:201 in  │
│ _get_logging_config                                                                             │
│                                                                                                 │
│   198 │   │   return session                                                                    │
│   199 │                                                                                         │
│   200 │   def _get_logging_config(self) -> dict[str, Any]:                                      │
│ ❱ 201 │   │   logging_config = self._get_config_loader()["logging"]                             │
│   202 │   │   # turn relative paths in logging config into absolute path                        │
│   203 │   │   # before initialising loggers                                                     │
│   204 │   │   logging_config = _convert_paths_to_absolute_posix(                                │
│                                                                                                 │
│ /home/tomasrojasc/.local/lib/python3.8/site-packages/kedro/config/config.py:117 in __getitem__  │
│                                                                                                 │
│   114 │   │   # explicitly on the ``ConfigLoader`` instance.                                    │
│   115 │   │   if key in self:                                                                   │
│   116 │   │   │   return super().__getitem__(key)                                               │
│ ❱ 117 │   │   return self.get(*self.config_patterns[key])                                       │
│   118 │                                                                                         │
│   119 │   def __repr__(self):  # pragma: no cover                                               │
│   120 │   │   return (                                                                          │
│                                                                                                 │
│ /home/tomasrojasc/.local/lib/python3.8/site-packages/kedro/config/config.py:131 in get          │
│                                                                                                 │
│   128 │   │   return _remove_duplicates(self._build_conf_paths())                               │
│   129 │                                                                                         │
│   130 │   def get(self, *patterns: str) -> dict[str, Any]:  # type: ignore                      │
│ ❱ 131 │   │   return _get_config_from_patterns(                                                 │
│   132 │   │   │   conf_paths=self.conf_paths, patterns=list(patterns)                           │
│   133 │   │   )                                                                                 │
│   134                                                                                           │
│                                                                                                 │
│ /home/tomasrojasc/.local/lib/python3.8/site-packages/kedro/config/common.py:73 in               │
│ _get_config_from_patterns                                                                       │
│                                                                                                 │
│    70 │                                                                                         │
│    71 │   for conf_path in conf_paths:                                                          │
│    72 │   │   if not Path(conf_path).is_dir():                                                  │
│ ❱  73 │   │   │   raise ValueError(                                                             │
│    74 │   │   │   │   f"Given configuration path either does not exist "                        │
│    75 │   │   │   │   f"or is not a valid directory: {conf_path}"                               │
│    76 │   │   │   )                                                                             │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
ValueError: Given configuration path either does not exist or is not a valid directory: 
/home/tomasrojasc/Documents/thesis_tomas/conf/local
weird, it is calling python3.8, when I am supposed to be using 3.10
I am using a micromamba environment
When I run
kedro ipython
i get
[TerminalIPythonApp] WARNING | Error in loading extension: kedro.ipython
maybe I am missing Ipython
c

Chandan Malla

09/12/2023, 4:33 PM
When you cloned the environment, did you create a new environment and install the requirements.txt?
t

Tomás Rojas

09/12/2023, 5:14 PM
yes 😞
Apparently kedro is not running on my virtual environment