Is it me error or kedro error? ``` File "/home/.....
# questions
a
Is it me error or kedro error?
Copy code
File "/home/.../.cache/pypoetry/virtualenvs/...-py3.10/lib/python3.10/site-packages/kedro/io/data_catalog.py", line 87, in _resolve_credentials
    return {k: _map_value(k, v) for k, v in config.items()}
AttributeError: 'str' object has no attribute 'items'
with versions:
Copy code
kedro==0.18.14
kedro-datasets==2.0.0
kedro-viz==7.0.0
1
d
so your credentials are not a dictionary
Copy code
credentials: a # this is as string
whereas
Copy code
credentials: # this is a dictionary
   my_key: a
a
Thanks, will look into that
I didnt touch credentials but migrated to omegaconf, maybe theres some difference
d
there shouldn’t be
but that is odd
a
I don't believe I even use credentials
but I'm not sure
d
oh that might be it! Do you have an empty credentials file?
a
no
I've searched everything with keyword credentials, both files and content and nothing relevant shows up
d
🤔 I’m not sure
will have to escalate
a
Here's full traceback
Looking at it I noticed that it references some local
cli.py
perhaps a relict from kedro before version 17
I'll figure if thats the cause
I've removed it but the error is the same
d
Have you gone straight for 0.17.x to 0.19.x?
a
no, I'm at 0.18.14
d
ok
a
hmm so I've checked what changed and I had old
cli.py
with which it was working and now it's not with the error above. Probably something is providing invalid credentials somewhere but I'm not sure how to find it.
any ideas how to debug this? like start kedro session in jupyter and check out what credentials are loaded?
my suspicion would be aronud anything related to Credentials in settings.py
After some debugging I see it fails on loading catalog template value:
Copy code
conf/env1/catalog_buckets.yml
1:ref_folder: "<s3a://kedrobucket/foobar/data/00_ref>"
is this the case that in OmegaConfigLoader all templated values need to be prefixed with _?
n
Do you have some credentials which should be a dict but you supply a str value instead? (just guessing from the error)
a
Yes it was the issue I've described, OmegaConfigLoader required
_
prefix.