Ansible change ssh port in playbook

In the role de-server-setup add a task to change the ansible_port host variable.

- name: Change ssh port to 8888
  set_fact:
    ansible_port: 8888

The only thing I can think of that might work would be to create ssh aliases for your hosts. In your .ssh/config:

Host de.1.before
  HostName 192.26.32.32
  Port 22

Host de.1.after
  HostName 192.26.32.32
  Port 8888

Then use these aliases in your Ansible inventory:

[de-servers-before]
de.1.before

[de-servers-after]
de.1.after

And the defined groups then respectively in your plays:

- name: Install de-servers configurations
  hosts: de-servers-before
  roles:
    - de-server-setup

- name: Install uk-servers configurations
  hosts: uk-servers  
  roles:
    - uk-server-setup

- name: Do some other job on de-servers (cannot be done until uk-servers is installed)
  hosts: de-servers-after
  roles:
    - de-servers-rest-of-jobs

Tags:

Ansible