Open benklett opened 1 month ago
Please set up an Harbor instance and then login it with your client like devcontainer
. Then share the core.log and nginx.log with us when authentication fails.
Please set up an Harbor instance and then login it with your client like
devcontainer
. Then share the core.log and nginx.log with us when authentication fails.
Thank you for taking the time to review this issue. I've attached the two log files, but i deployed harbor on k8s, because I only had that available. I enabled debug logging on the harbor instance as well.
can you try to use docker client login Harbor to see if this works?
can you try to use docker client login Harbor to see if this works?
Logging in with the docker client works as expected. Somehow Harbor does something different than for instance ghcr.io, because devcontainer-cli is able to fetch from there.
The problem seems to be about how nanolayer parses the www-authenticate Header are dashes in the service attribute of this header allowed? https://github.com/devcontainers-contrib/nanolayer/blob/main/nanolayer/utils/oci_registry.py#L45
Expected behavior and actual behavior: The devcontainer-cli should be able to pull the oci image from Harbor. It is noct able to do so and returns the following Error Message:
Steps to reproduce the problem:
Versions: Please specify the versions of following systems.
Additional context:
harbor.yml
and files in the same directory, including subdirectory./var/log/harbor/
.Full error
``` 0.390 Feature : MkDocs (via pipx) 0.390 Description : MkDocs is a fast, simple and downright gorgeous static site generator that's geared towards building project documentation. 0.390 Id : Unknown 0.390 Version : 2.0.18 0.390 Documentation : http://github.com/devcontainers-contrib/features/tree/main/src/mkdocs 0.390 Options : 0.390 VERSION="latest" 0.390 PLUGINS="mkdocs-material" 0.390 =========================================================================== 3.510 nanolayer 5.291 Traceback (most recent call last): 5.291 File "nanolayer.utils.oci_registry", line 134, in _attempt_request 5.292 File "urllib.request", line 216, in urlopen 5.292 File "urllib.request", line 525, in open 5.292 File "urllib.request", line 634, in http_response 5.292 File "urllib.request", line 563, in error 5.292 File "urllib.request", line 496, in _call_chain 5.292 File "urllib.request", line 643, in http_error_default 5.292 urllib.error.HTTPError: HTTP Error 401: Unauthorized 5.292 5.292 During handling of the above exception, another exception occurred: 5.292 5.292 Traceback (most recent call last): 5.292 File "