### 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
"""Mark the package for install."""
        is_newer_version_installed = self._is_newer_version_installed(pkg_spec)
        is_installed = self._is_installed(pkg_spec)
        try:
            if is_newer_version_installed:
                if self.allow_downgrade:
                    
                    
                    
                    
                    if upgrade:
                        if is_installed:
                            self.base.upgrade(pkg_spec)
                        else:
                            self.base.install(pkg_spec)
                    else:
                        self.base.install(pkg_spec)
                else:  
                    pass
            elif is_installed:  
                if upgrade:
                    self.base.upgrade(pkg_spec)
                else:  
                    pass
            else: