<!--- Verify first that your issue is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
Append user to group fails with `FileNotFoundError`

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
user

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
ansible 2.8.5
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/home/ubuntu/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.15+ (default, Oct  7 2019, 17:39:04) [GCC 7.4.0]
```

##### CONFIGURATION
```paste below
ANSIBLE_PIPELINING(/etc/ansible/ansible.cfg) = True
```
`pipelining = False` gives the same error.

##### OS / ENVIRONMENT
* Source OS: Ubuntu 18.04 (installed from http://ppa.launchpad.net/ansible/ansible/ubuntu)
* Target OS: Alpine Linux 3.10.2
* Target Python: Python 3.7.3

User is not part of the `wheel` group.

```sh
# id nv
uid=1000(nv) gid=1000(nv) groups=1000(nv)
```

##### STEPS TO REPRODUCE
```sh
ansible myhost -vvv -m user -a "name=nv groups=wheel append=yes" -e ansible_python_interpreter=/usr/bin/python3 -i hosts.yml -u root
```

##### EXPECTED RESULTS
user `nv` added to group `wheel`.

##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->

<!--- Paste verbatim command output between quotes -->
```paste below
ansible 2.8.5
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/home/ubuntu/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.15+ (default, Oct  7 2019, 17:39:04) [GCC 7.4.0]
Using /etc/ansible/ansible.cfg as config file
host_list declined parsing /home/ubuntu/ansible-labs/ansible/hosts.yml as it did not pass it's verify_file() method
script declined parsing /home/ubuntu/ansible-labs/ansible/hosts.yml as it did not pass it's verify_file() method
Parsed /home/ubuntu/ansible-labs/ansible/hosts.yml inventory source with yaml plugin
META: ran handlers
Using module file /usr/lib/python2.7/dist-packages/ansible/modules/system/user.py
Pipelining is enabled.
<myhost> ESTABLISH SSH CONNECTION FOR USER: root
<myhost> SSH: EXEC ssh -C -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o 'User="root"' -o ConnectTimeout=10 -o ControlPath=/home/ubuntu/.ansible/cp/a1dce85073 myhost '/bin/sh -c '"'"'/usr/bin/python3 && sleep 0'"'"''
<myhost> (1, '', '<stdin>:18: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module\'s documentation for alternative uses\nTraceback (most recent call last):\n  File "<stdin>", line 114, in <module>\n  File "<stdin>", line 106, in _ansiballz_main\n  File "<stdin>", line 49, in invoke_module\n  File "/usr/lib/python3.7/imp.py", line 234, in load_module\n    return load_source(name, filename, file)\n  File "/usr/lib/python3.7/imp.py", line 169, in load_source\n    module = _exec(spec, sys.modules[name])\n  File "<frozen importlib._bootstrap>", line 630, in _exec\n  File "<frozen importlib._bootstrap_external>", line 728, in exec_module\n  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed\n  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 2962, in <module>\n  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 2901, in main\n  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 2770, in modify_user\n  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 824, in get_groups_set\n  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 891, in user_info\n  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 899, in user_password\nFileNotFoundError: [Errno 2] No such file or directory\n')
<myhost> Failed to connect to the host via ssh: <stdin>:18: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
Traceback (most recent call last):
  File "<stdin>", line 114, in <module>
  File "<stdin>", line 106, in _ansiballz_main
  File "<stdin>", line 49, in invoke_module
  File "/usr/lib/python3.7/imp.py", line 234, in load_module
    return load_source(name, filename, file)
  File "/usr/lib/python3.7/imp.py", line 169, in load_source
    module = _exec(spec, sys.modules[name])
  File "<frozen importlib._bootstrap>", line 630, in _exec
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 2962, in <module>
  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 2901, in main
  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 2770, in modify_user
  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 824, in get_groups_set
  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 891, in user_info
  File "/tmp/ansible_user_payload_8xr4egvj/__main__.py", line 899, in user_password
FileNotFoundError: [Errno 2] No such file or directory
myhost | FAILED! => {
    "changed": false,
    "module_stderr": "<stdin>:18: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses\nTraceback (most recent call last):\n  File \"<stdin>\", line 114, in <module>\n  File \"<stdin>\", line 106, in _ansiballz_main\n  File \"<stdin>\", line 49, in invoke_module\n  File \"/usr/lib/python3.7/imp.py\", line 234, in load_module\n    return load_source(name, filename, file)\n  File \"/usr/lib/python3.7/imp.py\", line 169, in load_source\n    module = _exec(spec, sys.modules[name])\n  File \"<frozen importlib._bootstrap>\", line 630, in _exec\n  File \"<frozen importlib._bootstrap_external>\", line 728, in exec_module\n  File \"<frozen importlib._bootstrap>\", line 219, in _call_with_frames_removed\n  File \"/tmp/ansible_user_payload_8xr4egvj/__main__.py\", line 2962, in <module>\n  File \"/tmp/ansible_user_payload_8xr4egvj/__main__.py\", line 2901, in main\n  File \"/tmp/ansible_user_payload_8xr4egvj/__main__.py\", line 2770, in modify_user\n  File \"/tmp/ansible_user_payload_8xr4egvj/__main__.py\", line 824, in get_groups_set\n  File \"/tmp/ansible_user_payload_8xr4egvj/__main__.py\", line 891, in user_info\n  File \"/tmp/ansible_user_payload_8xr4egvj/__main__.py\", line 899, in user_password\nFileNotFoundError: [Errno 2] No such file or directory\n",
    "module_stdout": "",
    "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
    "rc": 1
}
```

- Currently supported on Illumos/Solaris.
        type: str
        version_added: "2.8"
notes:
  - There are specific requirements per platform on user management utilities. However
    they generally come pre-installed with the system and Ansible will require they
    are present at runtime. If they are not, a descriptive error message will be shown.
  - On SunOS platforms, the shadow file is backed up automatically since this module edits it directly.
    On other platforms, the shadow file is backed up by the underlying tools used by this module.
  - On macOS, this module uses C(dscl) to create, modify, and delete accounts. C(dseditgroup) is used to
    modify group membership. Accounts are hidden from the login window by modifying
    C(/Library/Preferences/com.apple.loginwindow.plist).
  - On FreeBSD, this module uses C(pw useradd) and C(chpass) to create, C(pw usermod) and C(chpass) to modify,
    C(pw userdel) remove, C(pw lock) to lock, and C(pw unlock) to unlock accounts.
  - On all other platforms, this module uses C(useradd) to create, C(usermod) to modify, and
    C(userdel) to remove accounts.
seealso:
- module: authorized_key
- module: group
- module: win_user
author:
- Stephen Fromm (@sfromm)
'''
EXAMPLES = r'''
- name: Add the user 'johnd' with a specific uid and a primary group of 'admin'
  user:
    name: johnd
    comment: John Doe
    uid: 1040
    group: admin