попытка подключиться к nexus с помощью python с помощью nexuscli

#python #api #command-line-interface #nexus

#python #API #интерфейс командной строки #nexus

Вопрос:

Я пытаюсь подключиться к серверу, делая:

 nexus_config = nexuscli.nexus_config.NexusConfig(username=NEXUS_USER,
                                                 password=NEXUS_PASSWORD,
                                                 url=NEXUS_URL,
                                                 x509_verify=True)
nexus_client = nexuscli.nexus_client.NexusClient(config=nexus_config)
print(nexus_client.repositories.list)
  

Но я получаю сообщение об ошибке:

 nexuscli.exception.NexusClientConnectionError: HTTPSConnectionPool(host='my_site.net', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:1091)')))
  

https://nexus3-cli.readthedocs.io/en/latest/nexuscli.html#module-nexuscli.nexus_config

проверяя URL-адрес с помощью API endpoing с помощью библиотеки запросов и настройки validate=False , я получаю предупреждение и действительно работает.

Поэтому я меняю свой код на: x509_verify=True надеясь, что произойдет то же самое с запросами, что я буду получать предупреждения, но вместо этого я получил.

Есть ли что-то, чего мне не хватает? или, может быть, в библиотеке есть ошибка? спасибо, ребята.

 nexuscli.exception.NexusClientAPIError: <exception str() failed>
  

Ответ №1:

Вы получаете исключение: NexusClientAPIError . Согласно документам:

исключение nexuscli.exception.Базы NexusClientAPIError: исключение

Неожиданный ответ от службы Nexus.

Я думаю, что ваш код в порядке, и проблема с x.509 сертификатом решена, и проблема может быть на стороне сервера.

Комментарии:

1. Вы правы, я могу распечатать nexus_client.http.server_version, и это не вызывает api, а просто извлекает информацию из инициализации