### Summary

Since dnf is not installing the packages when running `dnf download --downloadonly...`, it does not require root access to pull down the rpms. It would be nice if ansible followed the same pattern.

### Issue Type

Feature Idea

### Component Name

dnf

### Additional Information

<!--- Paste example playbooks or commands between quotes below -->
```yaml (paste below)
    - name: Download RPM's
      dnf:
        name: "{{ item }}"
        state: present
        download_only: yes
        download_dir: "{{ rpms_path }}"
      loop: "{{ rpms }}"
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
pkg_specs, group_specs, module_specs, filenames = self._parse_spec_group_file()
            pkg_specs = [p.strip() for p in pkg_specs]
            filenames = [f.strip() for f in filenames]
            groups = []
            environments = []
            for group_spec in (g.strip() for g in group_specs):
                group = self.base.comps.group_by_pattern(group_spec)
                if group:
                    groups.append(group.id)
                else:
                    environment = self.base.comps.environment_by_pattern(group_spec)
                    if environment:
                        environments.append(environment.id)
                    else:
                        self.module.fail_json(
                            msg="No group {0} available.".format(group_spec),
                            results=[],
                        )
            if self.state in ['installed', 'present']:
                
                self._install_remote_rpms(filenames)
                for filename in filenames:
                    response['results'].append("Installed {0}".format(filename))
                
                if module_specs and self.with_modules:
                    for module in module_specs:
                        try:
                            if not self._is_module_installed(module):
                                response['results'].append("Module {0} installed.".format(module))
                            self.module_base.install([module])