<!--- 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
`openssh_keypair` seem to report changed in cases where it shouldn't

##### ISSUE TYPE
- Bug Report

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

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
ansible 2.9.1
  config file = None
  configured module search path = ['/home/florian/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/florian/.local/pipx/venvs/ansible/lib64/python3.7/site-packages/ansible
  executable location = /home/florian/.local/bin/ansible
  python version = 3.7.5 (default, Oct 17 2019, 12:16:48) [GCC 9.2.1 20190827 (Red Hat 9.2.1-1)]
```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below
ANSIBLE_NOCOWS(env: ANSIBLE_NOCOWS) = True
```

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->

Debian Sid in a docker container, see playbook below


##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->

<!--- Paste example playbooks or commands between quotes below -->
```yaml
---

- hosts: localhost
  gather_facts: no

  tasks:
    - docker_container:  name=testing_debian state=started image=debian:sid command="sleep infinity"
    - add_host: name=testing_debian ansible_connection=docker

- hosts: testing_debian
  gather_facts: no

  tasks:
    # Ensure we start from a consistent state
    - raw: "apt -y update && apt -y install python openssh-client"
    - file: path=/tmp/key state=absent
    - file: path=/tmp/key.pub state=absent

    # full reproducer here

    - openssh_keypair: path=/tmp/key comment=test type=ed25519 
    - openssh_keypair: path=/tmp/key comment=test type=ed25519 
```

<!--- HINT: You can paste gist.github.com links for larger files -->

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->

I'd expect the second `openssh_keypair` task to report unchanged.


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

Both tasks show up as changed:

<!--- Paste verbatim command output between quotes -->
```paste below
TASK [file] **********************************************************************************************************************************************************************************************************************************
[WARNING]: Platform linux on host testing_debian is using the discovered Python interpreter at /usr/bin/python, but future installation of another Python interpreter could change this. See
https://docs.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for more information.

ok: [testing_debian] => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "path": "/tmp/key", "state": "absent"}

TASK [file] **********************************************************************************************************************************************************************************************************************************
ok: [testing_debian] => {"changed": false, "path": "/tmp/key.pub", "state": "absent"}

TASK [openssh_keypair] ***********************************************************************************************************************************************************************************************************************
changed: [testing_debian] => {"changed": true, "comment": "test", "filename": "/tmp/key", "fingerprint": "SHA256:k7zoCrUKcwjfvSsKSr+zElJL5wGgCbmNsgGdD4qXp6o", "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ5JTc62+6h0NlqM0r5pranKV3kXS7+XbzO9ZPeY2f36 test", "size": 256, "type": "ed25519"}

TASK [openssh_keypair] ***********************************************************************************************************************************************************************************************************************
changed: [testing_debian] => {"changed": true, "comment": "test", "filename": "/tmp/key", "fingerprint": "SHA256:k7zoCrUKcwjfvSsKSr+zElJL5wGgCbmNsgGdD4qXp6o", "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ5JTc62+6h0NlqM0r5pranKV3kXS7+XbzO9ZPeY2f36 test", "size": 256, "type": "ed25519"}
```

extends_documentation_fragment: files
'''
EXAMPLES = '''
# Generate an OpenSSH keypair with the default values (4096 bits, rsa)
- openssh_keypair:
    path: /tmp/id_ssh_rsa
# Generate an OpenSSH rsa keypair with a different size (2048 bits)
- openssh_keypair:
    path: /tmp/id_ssh_rsa
    size: 2048
# Force regenerate an OpenSSH keypair if it already exists
- openssh_keypair:
    path: /tmp/id_ssh_rsa
    force: True
# Generate an OpenSSH keypair with a different algorithm (dsa)
- openssh_keypair:
    path: /tmp/id_ssh_dsa
    type: dsa
'''
RETURN = '''
size:
    description: Size (in bits) of the SSH private key
    returned: changed or success
    type: int
    sample: 4096
type:
    description: Algorithm used to generate the SSH private key
    returned: changed or success
    type: str
    sample: rsa