Uploaded image for project: 'Automation Hub'
  1. Automation Hub
  2. AAH-840

Proxy authentication is not working in Repo Management / Sync

Details

    • AAH Sprint 14, 4.5.0a Sprint 3, 4.5.0a Sprint 4

    Description

      From support issue: https://bugzilla.redhat.com/show_bug.cgi?id=1987272

       

      Description of problem:
      
      After configuring proxy and credentials in community and certified collections of the private automation hub, the synchronization fails.
      
      
      Version-Release number of selected component (if applicable):
      
      
      How reproducible:
      
      
      Steps to Reproduce:
      1.Configure proxy and credentials in Repository Management/Remote/Advanced options for community or certified remote repositories
      2.Click on sync
      3.See the error and /var/log/messages
      
      Actual results:
      
      /var/log/messages
      
      Jul 29 07:47:15 ah20 rq[1115]: pulp [None]: rq.worker:INFO: resource-manager: 3e7fa683-b99d-4fd6-be81-e6ddb59738b4
      Jul 29 07:47:15 ah20 gunicorn[1116]: pulp [-]:  - - [29/Jul/2021:11:47:15 +0000] "POST /api/galaxy/content/rh-certified/v3/sync/ HTTP/1.0" 200 47 "https://192.168.122.199/ui/repositories?page_size=10&tab=remote" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36"
      Jul 29 07:47:15 ah20 gunicorn[1116]: pulp [-]:  - - [29/Jul/2021:11:47:15 +0000] "GET /api/galaxy/_ui/v1/remotes/?tab=remote&offset=0&limit=10 HTTP/1.0" 200 9512 "https://192.168.122.199/ui/repositories?page_size=10&tab=remote" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36"
      Jul 29 07:47:15 ah20 rq[1109]: pulp [None]: rq.worker:INFO: 1109@ah20: fde6e8ff-b660-4a3f-bbad-0fb07589ff12
      Jul 29 07:47:15 ah20 rq[1115]: pulp []: rq.worker:INFO: resource-manager: Job OK (3e7fa683-b99d-4fd6-be81-e6ddb59738b4)
      Jul 29 07:47:16 ah20 rq[1109]: pulp []: pulp_ansible.app.downloaders:INFO: Updating bearer token
      Jul 29 07:47:16 ah20 rq[1109]: Giving up _run(...) after 1 tries (aiohttp.client_exceptions.ClientHttpProxyError: 407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128'))
      Jul 29 07:47:16 ah20 rq[1109]: pulp []: backoff:ERROR: Giving up _run(...) after 1 tries (aiohttp.client_exceptions.ClientHttpProxyError: 407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128'))
      Jul 29 07:47:16 ah20 rq[1109]: pulp []: pulp_ansible.app.downloaders:INFO: Updating bearer token
      Jul 29 07:47:16 ah20 rq[1109]: Giving up _run(...) after 1 tries (aiohttp.client_exceptions.ClientHttpProxyError: 407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128'))
      Jul 29 07:47:16 ah20 rq[1109]: pulp []: backoff:ERROR: Giving up _run(...) after 1 tries (aiohttp.client_exceptions.ClientHttpProxyError: 407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128'))
      Jul 29 07:47:16 ah20 rq[1109]: pulp []: rq.worker:ERROR: Traceback (most recent call last):
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 384, in _get_root_api
      Jul 29 07:47:16 ah20 rq[1109]:    api_data = parse_metadata(await downloader.run())
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/download/base.py", line 227, in run
      Jul 29 07:47:16 ah20 rq[1109]:    return await self._run(extra_data=extra_data)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/backoff/_async.py", line 133, in retry
      Jul 29 07:47:16 ah20 rq[1109]:    ret = await target(*args, **kwargs)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 94, in _run
      Jul 29 07:47:16 ah20 rq[1109]:    return await self._run_with_token_refresh_and_401_retry()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 108, in _run_with_token_refresh_and_401_retry
      Jul 29 07:47:16 ah20 rq[1109]:    token = await self.get_or_update_token()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 167, in get_or_update_token
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/client.py", line 1117, in __aenter__
      Jul 29 07:47:16 ah20 rq[1109]:    self._resp = await self._coro
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/client.py", line 521, in _request
      Jul 29 07:47:16 ah20 rq[1109]:    req, traces=traces, timeout=real_timeout
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 535, in connect
      Jul 29 07:47:16 ah20 rq[1109]:    proto = await self._create_connection(req, traces, timeout)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 890, in _create_connection
      Jul 29 07:47:16 ah20 rq[1109]:    _, proto = await self._create_proxy_connection(req, traces, timeout)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 1129, in _create_proxy_connection
      Jul 29 07:47:16 ah20 rq[1109]:    headers=resp.headers,
      Jul 29 07:47:16 ah20 rq[1109]: aiohttp.client_exceptions.ClientHttpProxyError: 407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128')
      Jul 29 07:47:16 ah20 rq[1109]: During handling of the above exception, another exception occurred:
      Jul 29 07:47:16 ah20 rq[1109]: Traceback (most recent call last):
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/rq/worker.py", line 975, in perform_job
      Jul 29 07:47:16 ah20 rq[1109]:    rv = job.perform()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/rq/job.py", line 696, in perform
      Jul 29 07:47:16 ah20 rq[1109]:    self._result = self._execute()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/rq/job.py", line 719, in _execute
      Jul 29 07:47:16 ah20 rq[1109]:    return self.func(*self.args, **self.kwargs)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 129, in sync
      Jul 29 07:47:16 ah20 rq[1109]:    d_version.create()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/declarative_version.py", line 147, in create
      Jul 29 07:47:16 ah20 rq[1109]:    loop.run_until_complete(pipeline)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/asyncio/base_events.py", line 484, in run_until_complete
      Jul 29 07:47:16 ah20 rq[1109]:    return future.result()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py", line 225, in create_pipeline
      Jul 29 07:47:16 ah20 rq[1109]:    await asyncio.gather(*futures)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py", line 43, in __call__
      Jul 29 07:47:16 ah20 rq[1109]:    await self.run()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 726, in run
      Jul 29 07:47:16 ah20 rq[1109]:    should_we_sync = await self._should_we_sync()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 688, in _should_we_sync
      Jul 29 07:47:16 ah20 rq[1109]:    root, api_version = await self._get_root_api(self.remote.url)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/async_lru.py", line 237, in wrapped
      Jul 29 07:47:16 ah20 rq[1109]:    return (yield from asyncio.shield(fut, loop=_loop))
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 391, in _get_root_api
      Jul 29 07:47:16 ah20 rq[1109]:    api_data = parse_metadata(await downloader.run())
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/download/base.py", line 227, in run
      Jul 29 07:47:16 ah20 rq[1109]:    return await self._run(extra_data=extra_data)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/backoff/_async.py", line 133, in retry
      Jul 29 07:47:16 ah20 rq[1109]:    ret = await target(*args, **kwargs)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 94, in _run
      Jul 29 07:47:16 ah20 rq[1109]:    return await self._run_with_token_refresh_and_401_retry()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 108, in _run_with_token_refresh_and_401_retry
      Jul 29 07:47:16 ah20 rq[1109]:    token = await self.get_or_update_token()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 167, in get_or_update_token
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/client.py", line 1117, in __aenter__
      Jul 29 07:47:16 ah20 rq[1109]:    self._resp = await self._coro
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/client.py", line 521, in _request
      Jul 29 07:47:16 ah20 rq[1109]:    req, traces=traces, timeout=real_timeout
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 535, in connect
      Jul 29 07:47:16 ah20 rq[1109]:    proto = await self._create_connection(req, traces, timeout)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 890, in _create_connection
      Jul 29 07:47:16 ah20 rq[1109]:    _, proto = await self._create_proxy_connection(req, traces, timeout)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 1129, in _create_proxy_connection
      Jul 29 07:47:16 ah20 rq[1109]:    headers=resp.headers,
      Jul 29 07:47:16 ah20 rq[1109]: aiohttp.client_exceptions.ClientHttpProxyError: 407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128')
      Jul 29 07:47:16 ah20 rq[1109]: Traceback (most recent call last):
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 384, in _get_root_api
      Jul 29 07:47:16 ah20 rq[1109]:    api_data = parse_metadata(await downloader.run())
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/download/base.py", line 227, in run
      Jul 29 07:47:16 ah20 rq[1109]:    return await self._run(extra_data=extra_data)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/backoff/_async.py", line 133, in retry
      Jul 29 07:47:16 ah20 rq[1109]:    ret = await target(*args, **kwargs)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 94, in _run
      Jul 29 07:47:16 ah20 rq[1109]:    return await self._run_with_token_refresh_and_401_retry()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 108, in _run_with_token_refresh_and_401_retry
      Jul 29 07:47:16 ah20 rq[1109]:    token = await self.get_or_update_token()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 167, in get_or_update_token
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/client.py", line 1117, in __aenter__
      Jul 29 07:47:16 ah20 rq[1109]:    self._resp = await self._coro
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/client.py", line 521, in _request
      Jul 29 07:47:16 ah20 rq[1109]:    req, traces=traces, timeout=real_timeout
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 535, in connect
      Jul 29 07:47:16 ah20 rq[1109]:    proto = await self._create_connection(req, traces, timeout)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 890, in _create_connection
      Jul 29 07:47:16 ah20 rq[1109]:    _, proto = await self._create_proxy_connection(req, traces, timeout)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 1129, in _create_proxy_connection
      Jul 29 07:47:16 ah20 rq[1109]:    headers=resp.headers,
      Jul 29 07:47:16 ah20 rq[1109]: aiohttp.client_exceptions.ClientHttpProxyError: 407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128')
      Jul 29 07:47:16 ah20 rq[1109]: During handling of the above exception, another exception occurred:
      Jul 29 07:47:16 ah20 rq[1109]: Traceback (most recent call last):
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/rq/worker.py", line 975, in perform_job
      Jul 29 07:47:16 ah20 rq[1109]:    rv = job.perform()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/rq/job.py", line 696, in perform
      Jul 29 07:47:16 ah20 rq[1109]:    self._result = self._execute()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/rq/job.py", line 719, in _execute
      Jul 29 07:47:16 ah20 rq[1109]:    return self.func(*self.args, **self.kwargs)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 129, in sync
      Jul 29 07:47:16 ah20 rq[1109]:    d_version.create()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/declarative_version.py", line 147, in create
      Jul 29 07:47:16 ah20 rq[1109]:    loop.run_until_complete(pipeline)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/asyncio/base_events.py", line 484, in run_until_complete
      Jul 29 07:47:16 ah20 rq[1109]:    return future.result()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py", line 225, in create_pipeline
      Jul 29 07:47:16 ah20 rq[1109]:    await asyncio.gather(*futures)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py", line 43, in __call__
      Jul 29 07:47:16 ah20 rq[1109]:    await self.run()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 726, in run
      Jul 29 07:47:16 ah20 rq[1109]:    should_we_sync = await self._should_we_sync()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 688, in _should_we_sync
      Jul 29 07:47:16 ah20 rq[1109]:    root, api_version = await self._get_root_api(self.remote.url)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/async_lru.py", line 237, in wrapped
      Jul 29 07:47:16 ah20 rq[1109]:    return (yield from asyncio.shield(fut, loop=_loop))
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py", line 391, in _get_root_api
      Jul 29 07:47:16 ah20 rq[1109]:    api_data = parse_metadata(await downloader.run())
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulpcore/download/base.py", line 227, in run
      Jul 29 07:47:16 ah20 rq[1109]:    return await self._run(extra_data=extra_data)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/backoff/_async.py", line 133, in retry
      Jul 29 07:47:16 ah20 rq[1109]:    ret = await target(*args, **kwargs)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 94, in _run
      Jul 29 07:47:16 ah20 rq[1109]:    return await self._run_with_token_refresh_and_401_retry()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 108, in _run_with_token_refresh_and_401_retry
      Jul 29 07:47:16 ah20 rq[1109]:    token = await self.get_or_update_token()
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py", line 167, in get_or_update_token
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/client.py", line 1117, in __aenter__
      Jul 29 07:47:16 ah20 rq[1109]:    self._resp = await self._coro
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/client.py", line 521, in _request
      Jul 29 07:47:16 ah20 rq[1109]:    req, traces=traces, timeout=real_timeout
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 535, in connect
      Jul 29 07:47:16 ah20 rq[1109]:    proto = await self._create_connection(req, traces, timeout)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 890, in _create_connection
      Jul 29 07:47:16 ah20 rq[1109]:    _, proto = await self._create_proxy_connection(req, traces, timeout)
      Jul 29 07:47:16 ah20 rq[1109]:  File "/usr/lib64/python3.6/site-packages/aiohttp/connector.py", line 1129, in _create_proxy_connection
      Jul 29 07:47:16 ah20 rq[1109]:    headers=resp.headers,
      Jul 29 07:47:16 ah20 rq[1109]: aiohttp.client_exceptions.ClientHttpProxyError: 407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128')
      Jul 29 07:47:21 ah20 gunicorn[1116]: pulp [-]:  - - [29/Jul/2021:11:47:21 +0000] "GET /api/galaxy/_ui/v1/remotes/?tab=remote&offset=0&limit=10 HTTP/1.0" 200 15976 "https://192.168.122.199/ui/repositories?page_size=10&tab=remote" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36"
      
      Squid logs
      
      1627559170.932      0 192.168.122.199 TCP_DENIED/407 4125 CONNECT galaxy.ansible.com:443 - HIER_NONE/- text/html
      
      
      Expected results:
      
      Synchronization should be a success
      
      Additional info:
      
      {
          "pk": "1d0858f5-0ad2-4aa7-b3a6-6125834e7478",
          "name": "rh-certified",
          "url": "https://cloud.redhat.com/api/automation-hub/",
          "auth_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
          "policy": "immediate",
          "requirements_file": null,
          "created_at": "2021-07-23T11:08:18.456301Z",
          "updated_at": "2021-07-23T11:13:28.427275Z",
          "username": null,
          "tls_validation": false,
          "client_cert": null,
          "ca_cert": null,
          "last_sync_task": {
              "task_id": 29,
              "state": "failed",
              "started_at": "2021-07-29T11:47:15.989608Z",
              "finished_at": "2021-07-29T11:47:16.137079Z",
              "error": {
                  "traceback": "  File \"/usr/lib/python3.6/site-packages/rq/worker.py\", line 975, in perform_job\n    rv = job.perform()\n  File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 696, in perform\n    self._result = self._execute()\n  File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 719, in _execute\n    return self.func(*self.args, **self.kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 129, in sync\n    d_version.create()\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/declarative_version.py\", line 147, in create\n    loop.run_until_complete(pipeline)\n  File \"/usr/lib64/python3.6/asyncio/base_events.py\", line 484, in run_until_complete\n    return future.result()\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py\", line 225, in create_pipeline\n    await asyncio.gather(*futures)\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py\", line 43, in __call__\n    await self.run()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 726, in run\n    should_we_sync = await self._should_we_sync()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 688, in _should_we_sync\n    root, api_version = await self._get_root_api(self.remote.url)\n  File \"/usr/lib/python3.6/site-packages/async_lru.py\", line 237, in wrapped\n    return (yield from asyncio.shield(fut, loop=_loop))\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 391, in _get_root_api\n    api_data = parse_metadata(await downloader.run())\n  File \"/usr/lib/python3.6/site-packages/pulpcore/download/base.py\", line 227, in run\n    return await self._run(extra_data=extra_data)\n  File \"/usr/lib/python3.6/site-packages/backoff/_async.py\", line 133, in retry\n    ret = await target(*args, **kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py\", line 94, in _run\n    return await self._run_with_token_refresh_and_401_retry()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py\", line 108, in _run_with_token_refresh_and_401_retry\n    token = await self.get_or_update_token()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py\", line 167, in get_or_update_token\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/client.py\", line 1117, in __aenter__\n    self._resp = await self._coro\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/client.py\", line 521, in _request\n    req, traces=traces, timeout=real_timeout\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 535, in connect\n    proto = await self._create_connection(req, traces, timeout)\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 890, in _create_connection\n    _, proto = await self._create_proxy_connection(req, traces, timeout)\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 1129, in _create_proxy_connection\n    headers=resp.headers,\n",
                  "description": "407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128')"
              }
          },
          "repositories": [
              {
                  "name": "rh-certified",
                  "description": "Red Hat certified content repository",
                  "next_version": 2,
                  "distributions": [
                      {
                          "name": "rh-certified",
                          "base_path": "rh-certified",
                          "content_guard": null,
                          "created_at": "2021-07-23T11:08:18.461679Z",
                          "updated_at": "2021-07-23T11:08:18.461692Z"
                      }
                  ],
                  "created_at": "2021-07-23T11:08:18.458605Z",
                  "updated_at": "2021-07-23T11:18:04.869551Z",
                  "last_sync_task": {
                      "task_id": 29,
                      "state": "failed",
                      "started_at": "2021-07-29T11:47:15.989608Z",
                      "finished_at": "2021-07-29T11:47:16.137079Z",
                      "error": {
                          "traceback": "  File \"/usr/lib/python3.6/site-packages/rq/worker.py\", line 975, in perform_job\n    rv = job.perform()\n  File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 696, in perform\n    self._result = self._execute()\n  File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 719, in _execute\n    return self.func(*self.args, **self.kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 129, in sync\n    d_version.create()\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/declarative_version.py\", line 147, in create\n    loop.run_until_complete(pipeline)\n  File \"/usr/lib64/python3.6/asyncio/base_events.py\", line 484, in run_until_complete\n    return future.result()\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py\", line 225, in create_pipeline\n    await asyncio.gather(*futures)\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py\", line 43, in __call__\n    await self.run()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 726, in run\n    should_we_sync = await self._should_we_sync()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 688, in _should_we_sync\n    root, api_version = await self._get_root_api(self.remote.url)\n  File \"/usr/lib/python3.6/site-packages/async_lru.py\", line 237, in wrapped\n    return (yield from asyncio.shield(fut, loop=_loop))\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 391, in _get_root_api\n    api_data = parse_metadata(await downloader.run())\n  File \"/usr/lib/python3.6/site-packages/pulpcore/download/base.py\", line 227, in run\n    return await self._run(extra_data=extra_data)\n  File \"/usr/lib/python3.6/site-packages/backoff/_async.py\", line 133, in retry\n    ret = await target(*args, **kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py\", line 94, in _run\n    return await self._run_with_token_refresh_and_401_retry()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py\", line 108, in _run_with_token_refresh_and_401_retry\n    token = await self.get_or_update_token()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py\", line 167, in get_or_update_token\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/client.py\", line 1117, in __aenter__\n    self._resp = await self._coro\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/client.py\", line 521, in _request\n    req, traces=traces, timeout=real_timeout\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 535, in connect\n    proto = await self._create_connection(req, traces, timeout)\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 890, in _create_connection\n    _, proto = await self._create_proxy_connection(req, traces, timeout)\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 1129, in _create_proxy_connection\n    headers=resp.headers,\n",
                          "description": "407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128')"
                      }
                  }
              }
          ],
          "pulp_href": "/pulp/api/v3/remotes/ansible/collection/1d0858f5-0ad2-4aa7-b3a6-6125834e7478/",
          "download_concurrency": 10,
          "proxy_url": "http://192.168.122.212:3128",
          "proxy_username": "admin",
          "write_only_fields": [
              {
                  "name": "client_key",
                  "is_set": false
              },
              {
                  "name": "token",
                  "is_set": true
              },
              {
                  "name": "password",
                  "is_set": false
              },
              {
                  "name": "client_key",
                  "is_set": false
              },
              {
                  "name": "proxy_password",
                  "is_set": true
              }
          ],
          "rate_limit": 8
      }
      
      {
          "pk": "0a7087fd-7b0f-46aa-b86b-9f183b9ccc2c",
          "name": "community",
          "url": "https://galaxy.ansible.com/api/",
          "auth_url": null,
          "policy": "immediate",
          "requirements_file": "collections:\n  # Install a collection from Ansible Galaxy.\n  - name: geerlingguy.php_roles\n    version: 0.9.3\n    source: https://galaxy.ansible.com",
          "created_at": "2021-07-23T11:08:18.448315Z",
          "updated_at": "2021-07-29T11:29:51.633666Z",
          "username": null,
          "tls_validation": false,
          "client_cert": null,
          "ca_cert": null,
          "last_sync_task": {
              "task_id": 28,
              "state": "failed",
              "started_at": "2021-07-29T11:46:11.152380Z",
              "finished_at": "2021-07-29T11:46:11.290205Z",
              "error": {
                  "traceback": "  File \"/usr/lib/python3.6/site-packages/rq/worker.py\", line 975, in perform_job\n    rv = job.perform()\n  File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 696, in perform\n    self._result = self._execute()\n  File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 719, in _execute\n    return self.func(*self.args, **self.kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 129, in sync\n    d_version.create()\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/declarative_version.py\", line 147, in create\n    loop.run_until_complete(pipeline)\n  File \"/usr/lib64/python3.6/asyncio/base_events.py\", line 484, in run_until_complete\n    return future.result()\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py\", line 225, in create_pipeline\n    await asyncio.gather(*futures)\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py\", line 43, in __call__\n    await self.run()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 726, in run\n    should_we_sync = await self._should_we_sync()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 688, in _should_we_sync\n    root, api_version = await self._get_root_api(self.remote.url)\n  File \"/usr/lib/python3.6/site-packages/async_lru.py\", line 237, in wrapped\n    return (yield from asyncio.shield(fut, loop=_loop))\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 384, in _get_root_api\n    api_data = parse_metadata(await downloader.run())\n  File \"/usr/lib/python3.6/site-packages/pulpcore/download/base.py\", line 227, in run\n    return await self._run(extra_data=extra_data)\n  File \"/usr/lib/python3.6/site-packages/backoff/_async.py\", line 133, in retry\n    ret = await target(*args, **kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py\", line 88, in _run\n    return await super()._run(extra_data=extra_data)\n  File \"/usr/lib/python3.6/site-packages/backoff/_async.py\", line 133, in retry\n    ret = await target(*args, **kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulpcore/download/http.py\", line 216, in _run\n    async with self.session.get(self.url, proxy=self.proxy, auth=self.auth) as response:\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/client.py\", line 1117, in __aenter__\n    self._resp = await self._coro\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/client.py\", line 521, in _request\n    req, traces=traces, timeout=real_timeout\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 535, in connect\n    proto = await self._create_connection(req, traces, timeout)\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 890, in _create_connection\n    _, proto = await self._create_proxy_connection(req, traces, timeout)\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 1129, in _create_proxy_connection\n    headers=resp.headers,\n",
                  "description": "407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128')"
              }
          },
          "repositories": [
              {
                  "name": "community",
                  "description": "Community content repository",
                  "next_version": 2,
                  "distributions": [
                      {
                          "name": "community",
                          "base_path": "community",
                          "content_guard": null,
                          "created_at": "2021-07-23T11:08:18.453891Z",
                          "updated_at": "2021-07-23T11:08:18.453903Z"
                      }
                  ],
                  "created_at": "2021-07-23T11:08:18.450732Z",
                  "updated_at": "2021-07-23T11:21:22.119152Z",
                  "last_sync_task": {
                      "task_id": 28,
                      "state": "failed",
                      "started_at": "2021-07-29T11:46:11.152380Z",
                      "finished_at": "2021-07-29T11:46:11.290205Z",
                      "error": {
                          "traceback": "  File \"/usr/lib/python3.6/site-packages/rq/worker.py\", line 975, in perform_job\n    rv = job.perform()\n  File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 696, in perform\n    self._result = self._execute()\n  File \"/usr/lib/python3.6/site-packages/rq/job.py\", line 719, in _execute\n    return self.func(*self.args, **self.kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 129, in sync\n    d_version.create()\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/declarative_version.py\", line 147, in create\n    loop.run_until_complete(pipeline)\n  File \"/usr/lib64/python3.6/asyncio/base_events.py\", line 484, in run_until_complete\n    return future.result()\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py\", line 225, in create_pipeline\n    await asyncio.gather(*futures)\n  File \"/usr/lib/python3.6/site-packages/pulpcore/plugin/stages/api.py\", line 43, in __call__\n    await self.run()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 726, in run\n    should_we_sync = await self._should_we_sync()\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 688, in _should_we_sync\n    root, api_version = await self._get_root_api(self.remote.url)\n  File \"/usr/lib/python3.6/site-packages/async_lru.py\", line 237, in wrapped\n    return (yield from asyncio.shield(fut, loop=_loop))\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/tasks/collections.py\", line 384, in _get_root_api\n    api_data = parse_metadata(await downloader.run())\n  File \"/usr/lib/python3.6/site-packages/pulpcore/download/base.py\", line 227, in run\n    return await self._run(extra_data=extra_data)\n  File \"/usr/lib/python3.6/site-packages/backoff/_async.py\", line 133, in retry\n    ret = await target(*args, **kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulp_ansible/app/downloaders.py\", line 88, in _run\n    return await super()._run(extra_data=extra_data)\n  File \"/usr/lib/python3.6/site-packages/backoff/_async.py\", line 133, in retry\n    ret = await target(*args, **kwargs)\n  File \"/usr/lib/python3.6/site-packages/pulpcore/download/http.py\", line 216, in _run\n    async with self.session.get(self.url, proxy=self.proxy, auth=self.auth) as response:\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/client.py\", line 1117, in __aenter__\n    self._resp = await self._coro\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/client.py\", line 521, in _request\n    req, traces=traces, timeout=real_timeout\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 535, in connect\n    proto = await self._create_connection(req, traces, timeout)\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 890, in _create_connection\n    _, proto = await self._create_proxy_connection(req, traces, timeout)\n  File \"/usr/lib64/python3.6/site-packages/aiohttp/connector.py\", line 1129, in _create_proxy_connection\n    headers=resp.headers,\n",
                          "description": "407, message='Proxy Authentication Required', url=URL('http://192.168.122.212:3128')"
                      }
                  }
              }
          ],
          "pulp_href": "/pulp/api/v3/remotes/ansible/collection/0a7087fd-7b0f-46aa-b86b-9f183b9ccc2c/",
          "download_concurrency": 10,
          "proxy_url": "http://192.168.122.212:3128",
          "proxy_username": "admin",
          "write_only_fields": [
              {
                  "name": "client_key",
                  "is_set": false
              },
              {
                  "name": "token",
                  "is_set": false
              },
              {
                  "name": "password",
                  "is_set": false
              },
              {
                  "name": "client_key",
                  "is_set": false
              },
              {
                  "name": "proxy_password",
                  "is_set": true
              }
          ],
          "rate_limit": 8
      }
      

      Attachments

        Issue Links

          Activity

            People

              bmclaugh@redhat.com Brian McLaughlin
              cspealma@redhat.com Clara Spealman
              Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: