Public bug reported:

For example, from a fresh jammy container:

root@j:~# do-release-upgrade                         
Checking for a new Ubuntu release
Could not find the release announcement
The server may be overloaded.

Or from a fresh noble container:

root@n:~# do-release-upgrade -d
Checking for a new Ubuntu release
Could not find the release announcement
The server may be overloaded.

This error message corresponds to u-r-u getting a 403 when attempting to
reach the release announcement page. Note that at the time of writing,
the pages are accessible by browser, curl, etc. but not u-r-u.

In fact, requests.get seems to work, but urllib.request.urlopen (which
u-r-u uses) gets a 403:

root@q:~# python3
Python 3.13.7 (main, Mar  3 2026, 12:19:54) [GCC 15.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from urllib.request import urlopen
>>> 
root@q:~# python3
Python 3.13.7 (main, Mar  3 2026, 12:19:54) [GCC 15.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> url = 
>>> "http://archive.ubuntu.com/ubuntu/dists/resolute/main/dist-upgrader-all/current/ReleaseAnnouncement";
>>> from urllib.request import urlopen
>>> urlopen(url)
Traceback (most recent call last):
  File "<python-input-2>", line 1, in <module>
    urlopen(url)
    ~~~~~~~^^^^^
  File "/usr/lib/python3.13/urllib/request.py", line 189, in urlopen
    return opener.open(url, data, timeout)
           ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/urllib/request.py", line 495, in open
    response = meth(req, response)
  File "/usr/lib/python3.13/urllib/request.py", line 604, in http_response
    response = self.parent.error(
        'http', request, response, code, msg, hdrs)
  File "/usr/lib/python3.13/urllib/request.py", line 533, in error
    return self._call_chain(*args)
           ~~~~~~~~~~~~~~~~^^^^^^^
  File "/usr/lib/python3.13/urllib/request.py", line 466, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.13/urllib/request.py", line 613, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 403: Forbidden
>>> import requests
>>> requests.get(url)
<Response [200]>

This is most likely caused by changes in infrastructure due to recent
issues.

** Affects: ubuntu-release-upgrader (Ubuntu)
     Importance: High
         Status: Triaged

** Changed in: ubuntu-release-upgrader (Ubuntu)
       Status: New => Triaged

** Changed in: ubuntu-release-upgrader (Ubuntu)
   Importance: Undecided => High

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2151246

Title:
  upgrades from all releases fail to fetch release announcement

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/2151246/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to