- name: Check if Tailscale is installed
  ansible.builtin.command: which tailscale
  register: tailscale_check
  changed_when: false
  failed_when: false

- name: Install Tailscale using curl script
  ansible.builtin.shell: curl -fsSL https://tailscale.com/install.sh | sh
  args:
    creates: /usr/bin/tailscale
  when: tailscale_check.rc != 0
  become: true

- name: Check if Tailscale is running
  ansible.builtin.command: tailscale status
  register: tailscale_status
  changed_when: false
  failed_when: false

- name: Enable and start Tailscale service
  ansible.builtin.systemd:
    name: tailscaled
    state: started
    enabled: true
    daemon_reload: true
  become: true

- name: Notify user to authenticate Tailscale
  ansible.builtin.debug:
    msg: "Please authenticate Tailscale by running: sudo tailscale up --operator=$USER"
  when: tailscale_status.rc != 0
