##### SUMMARY
When using wild-card in package name to remove, the first run will remove the packages,
but the second run will fail with message `Failed to install some of the specified packages`

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME

- dnf

##### ANSIBLE VERSION
```
ansible 2.8.5
  config file = /home/rabin/src/ansible/workstation-setup/ansible.cfg
  configured module search path = ['/home/rabin/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.7.4 (default, Jul  9 2019, 16:32:37) [GCC 9.1.1 20190503 (Red Hat 9.1.1-1)]
```

##### CONFIGURATION

```
ANSIBLE_SSH_CONTROL_PATH(/home/rabin/src/ansible/workstation-setup/ansible.cfg) = ./.ansible/ssh-%%C
CACHE_PLUGIN(/home/rabin/src/ansible/workstation-setup/ansible.cfg) = jsonfile
CACHE_PLUGIN_CONNECTION(/home/rabin/src/ansible/workstation-setup/ansible.cfg) = ./.ansible/facts_cache
CACHE_PLUGIN_TIMEOUT(/home/rabin/src/ansible/workstation-setup/ansible.cfg) = 86400
DEFAULT_EXECUTABLE(/home/rabin/src/ansible/workstation-setup/ansible.cfg) = /bin/bash
DEFAULT_GATHERING(/home/rabin/src/ansible/workstation-setup/ansible.cfg) = smart
DEFAULT_HOST_LIST(/home/rabin/src/ansible/workstation-setup/ansible.cfg) = ['/home/rabin/src/ansible/workstation-setup/inventory']
DEFAULT_REMOTE_PORT(/home/rabin/src/ansible/workstation-setup/ansible.cfg) = 22
RETRY_FILES_SAVE_PATH(/home/rabin/src/ansible/workstation-setup/ansible.cfg) = /home/rabin/src/ansible/workstation-setup/.ansible/retry
```

##### OS / ENVIRONMENT

* Fedora 30

##### STEPS TO REPRODUCE

try to remove a package twice
or run the playbook twice (first run will work if there is a match, but secend run will fail)


```yaml
- dnf:
    name: lohit-*-fonts

- dnf:
    name: lohit-*-fonts
    state: absent

- dnf:
    name: lohit-*-fonts
    state: absent

```

##### EXPECTED RESULTS
Same as when you ask it to remove a spesific package
```yaml
- dnf:
    name: lohit-tamil-fonts

- dnf:
    name: lohit-tamil-fonts
    state: absent

- dnf:
    name: lohit-tamil-fonts
    state: absent
```


##### ACTUAL RESULTS
```
fatal: [localhost]: FAILED! => {"changed": false, "failures": ["lohit-*-fonts - no package matched: lohit-*-fonts"], "msg": "Failed to install some of the specified packages", "rc": 1, "results": []}
```

'msg': "Unknown Error occured for package {0}.".format(pkg_spec),
                    'failure': " ".join((pkg_spec, to_native(e))),
                    'rc': 1,
                    "results": []
                }
    def _whatprovides(self, filepath):
        available = self.base.sack.query().available()
        pkg_spec = available.filter(provides=filepath).run()
        if pkg_spec:
            return pkg_spec[0].name
    def _parse_spec_group_file(self):
        pkg_specs, grp_specs, module_specs, filenames = [], [], [], []
        already_loaded_comps = False  
        for name in self.names:
            if '://' in name:
                name = self.fetch_rpm_from_url(name)
                filenames.append(name)
            elif name.endswith(".rpm"):
                filenames.append(name)
            elif name.startswith("@") or ('/' in name):
                
                if '/' in name:
                    pkg_spec = self._whatprovides(name)
                    if pkg_spec:
                        pkg_specs.append(pkg_spec)
                        continue
                if not already_loaded_comps:
                    self.base.read_comps()
                    already_loaded_comps = True
                grp_env_mdl_candidate = name[1:].strip()