Bug 1916036

Summary: initial-setup broken since anaconda 34.17
Product: [Fedora] Fedora Reporter: Adam Williamson <awilliam>
Component: anacondaAssignee: Anaconda Maintenance Team <anaconda-maint-list>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: rawhideCC: anaconda-maint-list, jonathan, kellin, robatino, vanmeeuwen+fedora, vponcova, wwoods
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: openqa
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-01-14 10:18:55 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1829022    

Description Adam Williamson 2021-01-14 01:36:40 UTC
Since anaconda 34.17 landed in Rawhide, initial-setup doesn't work any more. It hits this traceback on startup:

Traceback (most recent call last):
  File "/usr/libexec/initial-setup/initial-setup-text", line 10, in <module>
    is_instance.run()
  File "/usr/lib/python3.9/site-packages/initial_setup/__init__.py", line 415, in run
    ui.setup(self.data)
  File "/usr/lib/python3.9/site-packages/initial_setup/tui/tui.py", line 279, in setup
    TextUserInterface.setup(self, data)
  File "/usr/lib64/python3.9/site-packages/pyanaconda/ui/tui/__init__.py", line 204, in setup
    should_schedule = obj.setup(self.ENVIRONMENT)
  File "/usr/lib64/python3.9/site-packages/pyanaconda/ui/tui/hubs/__init__.py", line 67, in setup
    cats_and_spokes = self._collectCategoriesAndSpokes()
  File "/usr/lib/python3.9/site-packages/initial_setup/tui/hubs/initial_setup_hub.py", line 22, in _collectCategoriesAndSpokes
    return common.collectCategoriesAndSpokes(self, TUI_spoke_class)
  File "/usr/lib/python3.9/site-packages/initial_setup/common.py", line 63, in collectCategoriesAndSpokes
    candidate_spokes = collect_spokes(hub_instance.paths["spokes"], spoke_parent_class)
  File "/usr/lib/python3.9/site-packages/initial_setup/common.py", line 40, in collect_spokes
    spokes.extend(collect(mask, path,
  File "/usr/lib64/python3.9/site-packages/pyanaconda/core/util.py", line 1307, in collect
    members = [(name, getattr(module, name))
  File "/usr/lib64/python3.9/site-packages/pyanaconda/core/util.py", line 1309, in <listcomp>
    if p(getattr(module, name))]
  File "/usr/lib64/python3.9/site-packages/pyanaconda/core/util.py", line 1301, in <lambda>
    p = lambda obj: inspect.isclass(obj) and pred(obj)
  File "/usr/lib/python3.9/site-packages/initial_setup/common.py", line 41, in <lambda>
    lambda obj: issubclass(obj, spoke_parent_class) and obj.should_run("firstboot", None)))
  File "/usr/lib64/python3.9/site-packages/pyanaconda/ui/tui/spokes/installation_source.py", line 73, in should_run
    return context.payload.type == PAYLOAD_TYPE_DNF
  File "/usr/lib64/python3.9/site-packages/pyanaconda/ui/context.py", line 51, in payload
    return self._anaconda.payload
  File "/usr/lib64/python3.9/site-packages/pyanaconda/anaconda.py", line 92, in payload
    elif self.opts.liveinst:
AttributeError: 'NoneType' object has no attribute 'liveinst'

I believe this is most likely caused by https://github.com/rhinstaller/anaconda/commit/ef0b5e98dc8cdb46aa80f3210825db366143aab6 - "Don't run spokes that don't support non-package payloads" - but I'm not sure what the best fix would be.

This breaks disk image deployment, because initial-setup has to work for setting a root and/or user password in that case. Proposing as a Beta blocker as a violation of Basic criterion "A working mechanism to create a user account must be clearly presented during installation and/or first boot of the installed system" for aarch64 disk images, some of which are release blocking.

Comment 1 Vendula Poncova 2021-01-14 10:18:55 UTC

*** This bug has been marked as a duplicate of bug 1915541 ***