Bug 1503776 - [modularity] module info tracebacks on copr build 2.7.5-3.fc26.modularity.1.3fb9e5c.git.8052.f3badaeNone
Summary: [modularity] module info tracebacks on copr build 2.7.5-3.fc26.modularity.1....
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: dnf
Version: 27
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
Assignee: Martin Hatina
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1478068
TreeView+ depends on / blocked
 
Reported: 2017-10-18 17:46 UTC by Karel Srot
Modified: 2018-03-13 08:02 UTC (History)
6 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2018-03-13 08:02:25 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Karel Srot 2017-10-18 17:46:05 UTC
Description of problem:

   When I successfully run "dnf module info ModuleB:f26"                        # behave/steps/command_steps.py:33
      Assertion Failed: 1 != 0
      Captured stdout:
      shell.command: ['dnf-3', 'module', 'info', 'ModuleB:f26']
      shell.command.stdout:
      Last metadata expiration check: 0:00:00 ago on Wed Oct 18 17:41:40 2017.
      
      
      shell.command.stderr:
      Traceback (most recent call last):
        File "/usr/bin/dnf-3", line 58, in <module>
          main.user_main(sys.argv[1:], exit_code=True)
        File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 179, in user_main
          errcode = main(args)
        File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 64, in main
          return _main(base, args, cli_class, option_parser_class)
        File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 99, in _main
          return cli_run(cli, base)
        File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 115, in cli_run
          cli.run()
        File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 1013, in run
          return self.command.run()
        File "/usr/lib/python3.6/site-packages/dnf/cli/commands/module.py", line 278, in run
          self.subcmd.run_on_module()
        File "/usr/lib/python3.6/site-packages/dnf/cli/commands/module.py", line 76, in run_on_module
          print(self.base.repo_module_dict.get_info(spec))
        File "/usr/lib/python3.6/site-packages/dnf/module/repo_module_dict.py", line 446, in get_info
          lines["Default profiles"] = " ".join(default_profiles)
      TypeError: can only join an iterable


Version-Release number of selected component (if applicable):
2.7.5-3.fc26.modularity.1.3fb9e5c.git.8052.f3badaeNone 

How reproducible:
always

Steps to Reproduce:
1. run
  dnf module info ModuleB
with the specified dnf version

reproducible by dnf upstream test suite using the module-info-1.feature
test pending in the pull request.

Additional info:

[root@1fddd40f8cf6 /]# dnf module list
Last metadata expiration check: 0:00:06 ago on Wed Oct 18 17:43:51 2017.
modularityABDE
Name                          Stream                      Version                      Profiles                                 
ModuleA                       f26                         2                            client, default, ...                     
ModuleB                       f26                         2                            default                                  
ModuleD                       f26                         1                            default                                  
ModuleE                       f26                         1                            default                                  

Hint: [d]efault, [i]nstalled, [l]ocked


ModuleB description from the module.md file

      ---
      data:
        artifacts:
          rpms: [TestG-2-1.modB.noarch, TestI-1-1.modB.noarch]
        components:
          rpms:
            TestG: {rationale: 'rationale for TestG'}
            TestI: {rationale: 'rationale for TestI'}
        dependencies:
          buildrequires: {}
          requires: {}
        description: Module ModuleB description
        license:
          module: [MIT]
        name: ModuleB
        profiles:
          default:
            rpms: [TestG, TestI]
        stream: f26
        summary: Module ModuleB summary
        version: 2
      document: modulemd
      version: 1

Comment 1 Karel Srot 2017-10-19 13:06:37 UTC
Based on the discussion with Dan this is happening because there is no system profile (defining the default profiles) available.

Comment 2 Martin Hatina 2017-10-19 14:05:48 UTC
Fixed in https://github.com/rpm-software-management/dnf/pull/951

Comment 3 Karel Srot 2017-10-26 07:50:14 UTC
Based on upstream test dnf-module-list-1 I can confirm that the traceback is gone.


Note You need to log in before you can comment on or make changes to this bug.