<!--- Verify first that your feature was not already discussed on GitHub -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
<!--- Describe the new feature/improvement briefly below -->
dnf has a nobest [option](https://dnf.readthedocs.io/en/latest/command_ref.html#options-label) which does the following:

> --nobest
>     Set best option to False, so that transactions are not limited to best candidates only.

##### ISSUE TYPE
- Feature Idea

##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
dnf

##### ADDITIONAL INFORMATION
<!--- Describe how the feature would be used, why it is needed and what it would solve -->
Docker cannot be installed on CentOS8 without `--nobest` option and later on every time you want to do dnf upgrade you should pass `--nobest` option again, so that it does not complain about `docker-ce` package.
results=[],
                rc=0
            )
        
        
        
        if self.state is None:
            self.state = 'installed'
        if self.list:
            self.base = self._base(
                self.conf_file, self.disable_gpg_check, self.disablerepo,
                self.enablerepo, self.installroot
            )
            self.list_items(self.list)
        else:
            
            
            if not dnf.util.am_i_root():
                self.module.fail_json(
                    msg="This command has to be run under the root user.",
                    results=[],
                )
            self.base = self._base(
                self.conf_file, self.disable_gpg_check, self.disablerepo,
                self.enablerepo, self.installroot
            )
            if self.with_modules:
                self.module_base = dnf.module.module_base.ModuleBase(self.base)
            self.ensure()
def main():