##### SUMMARY
Cannot set hostname on 2.9.6

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
[hostname](https://docs.ansible.com/ansible/latest/modules/hostname_module.html)

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```
$ ansible --version
ansible 2.9.6
  config file = /home/porn/test/ansible/ansible.cfg
  configured module search path = ['/home/porn/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/porn/.local/lib/python3.6/site-packages/ansible
  executable location = /home/porn/.local/bin/ansible
  python version = 3.6.9 (default, Nov  7 2019, 10:44:02) [GCC 8.3.0]
```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```
$ ansible-config dump --only-changed
ANSIBLE_PIPELINING(/home/porn/test/ansible/ansible.cfg) = True
ANSIBLE_SSH_CONTROL_PATH(/home/porn/test/ansible/ansible.cfg) = /tmp/%%h-%%p-%%r
DEFAULT_CALLBACK_WHITELIST(/home/porn/test/ansible/ansible.cfg) = ['profile_tasks']
DEFAULT_GATHERING(/home/porn/test/ansible/ansible.cfg) = smart
DEFAULT_HOST_LIST(/home/porn/test/ansible/ansible.cfg) = ['/home/porn/test/ansible/hosts']
DEFAULT_REMOTE_PORT(/home/porn/test/ansible/ansible.cfg) = 29010
DEFAULT_REMOTE_USER(/home/porn/test/ansible/ansible.cfg) = ubuntu
HOST_KEY_CHECKING(/home/porn/test/ansible/ansible.cfg) = False
INTERPRETER_PYTHON(/home/porn/test/ansible/ansible.cfg) = /usr/bin/python3
```

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
```
$ uname -a
Linux pornmachine 4.15.0-91-generic #92-Ubuntu SMP Fri Feb 28 11:09:48 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.4 LTS
Release:        18.04
Codename:       bionic
```

##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->
try to set hostname on another ubuntu 18.04

<!--- Paste example playbooks or commands between quotes below -->
```yaml
- name: Base setup
  hosts: workers
  tasks:
    - hostname:
        name: "worker"
        use: debian
      become: yes
```

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
The hostname should be set

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

<!--- Paste verbatim command output between quotes -->
```
TASK [hostname] *****************************************************************************************************************************************************************************
task path: /home/porn/test/ansible/worker.yml:5
Friday 03 April 2020  20:27:27 +0200 (0:00:01.969)       0:00:02.022 ********** 
Using module file /home/porn/.local/lib/python3.6/site-packages/ansible/modules/system/hostname.py
Pipelining is enabled.
<35.183.134.118> ESTABLISH SSH CONNECTION FOR USER: ubuntu
<35.183.134.118> SSH: EXEC ssh -vvv -C -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no -o Port=29010 -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o 'User="ubuntu"' -o ConnectTimeout=10 -o ControlPath=/tmp/%h-%p-%r 35.183.134.118 '/bin/sh -c '"'"'sudo -H -S -n  -u root /bin/sh -c '"'"'"'"'"'"'"'"'echo BECOME-SUCCESS-qzpktirbekasjjznnyfijducgvmqtgzq ; /usr/bin/python3'"'"'"'"'"'"'"'"' && sleep 0'"'"''
Escalation succeeded
<35.183.134.118> (1, b'\n{"msg": "Command failed rc=1, out=, err=Unknown operation worker\\n", "failed": true, "invocation": {"module_args": {"name": "worker", "use": "debian"}}}\n', b'OpenSSH_7.6p1 Ubuntu-4ubuntu0.3, OpenSSL 1.0.2n  7 Dec 2017\r\ndebug1: Reading configuration data /home/porn/.ssh/config\r\ndebug1: /home/porn/.ssh/config line 15: Applying options for 35.*\r\ndebug1: Reading configuration data /etc/ssh/ssh_config\r\ndebug1: /etc/ssh/ssh_config line 19: Applying options for *\r\ndebug1: auto-mux: Trying existing master\r\ndebug2: fd 3 setting O_NONBLOCK\r\ndebug2: mux_client_hello_exchange: master version 4\r\ndebug3: mux_client_forwards: request forwardings: 0 local, 0 remote\r\ndebug3: mux_client_request_session: entering\r\ndebug3: mux_client_request_alive: entering\r\ndebug3: mux_client_request_alive: done pid = 11218\r\ndebug3: mux_client_request_session: session request sent\r\ndebug1: mux_client_request_session: master session id: 2\r\ndebug3: mux_client_read_packet: read header failed: Broken pipe\r\ndebug2: Received exit status from master 1\r\n')
<35.183.134.118> Failed to connect to the host via ssh: OpenSSH_7.6p1 Ubuntu-4ubuntu0.3, OpenSSL 1.0.2n  7 Dec 2017
debug1: Reading configuration data /home/porn/.ssh/config
debug1: /home/porn/.ssh/config line 15: Applying options for 35.*
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: auto-mux: Trying existing master
debug2: fd 3 setting O_NONBLOCK
debug2: mux_client_hello_exchange: master version 4
debug3: mux_client_forwards: request forwardings: 0 local, 0 remote
debug3: mux_client_request_session: entering
debug3: mux_client_request_alive: entering
debug3: mux_client_request_alive: done pid = 11218
debug3: mux_client_request_session: session request sent
debug1: mux_client_request_session: master session id: 2
debug3: mux_client_read_packet: read header failed: Broken pipe
debug2: Received exit status from master 1
fatal: [35.183.134.118]: FAILED! => {
    "changed": false,
    "invocation": {
        "module_args": {
            "name": "worker",
            "use": "debian"
        }
    },
    "msg": "Command failed rc=1, out=, err=Unknown operation worker\n"
}
```

The only workaround is ansible downgrade to 2.9.5 :(
platform = 'Linux'
    distribution = 'Devuan'
    strategy_class = FileStrategy
class RaspbianHostname(Hostname):
    platform = 'Linux'
    distribution = 'Raspbian'
    strategy_class = FileStrategy
class GentooHostname(Hostname):
    platform = 'Linux'
    distribution = 'Gentoo'
    strategy_class = OpenRCStrategy
class ALTLinuxHostname(Hostname):
    platform = 'Linux'
    distribution = 'Altlinux'
    strategy_class = RedHatStrategy
class AlpineLinuxHostname(Hostname):
    platform = 'Linux'
    distribution = 'Alpine'
    strategy_class = AlpineStrategy
class OpenBSDHostname(Hostname):
    platform = 'OpenBSD'
    distribution = None
    strategy_class = OpenBSDStrategy
class SolarisHostname(Hostname):
    platform = 'SunOS'
    distribution = None
    strategy_class = SolarisStrategy
class FreeBSDHostname(Hostname):