Spaces:
No application file
No application file
- name: Tailscale Setup | |
hosts: all | |
become: yes | |
vars_files: | |
- vars/secrets.yml | |
tasks: | |
- name: Check if Tailscale GPG key exists | |
stat: | |
path: /usr/share/keyrings/tailscale-archive-keyring.gpg | |
register: tailscale_key | |
- name: Download Tailscale GPG key | |
get_url: | |
url: https://pkgs.tailscale.com/stable/ubuntu/jammy.noarmor.gpg | |
dest: /usr/share/keyrings/tailscale-archive-keyring.gpg | |
mode: '0644' | |
when: not tailscale_key.stat.exists | |
- name: Add Tailscale repository | |
ansible.builtin.apt_repository: | |
repo: deb [signed-by=/usr/share/keyrings/tailscale-archive-keyring.gpg] https://pkgs.tailscale.com/stable/ubuntu jammy main | |
state: present | |
filename: tailscale | |
- name: Update apt cache again | |
apt: | |
update_cache: yes | |
- name: Install Tailscale | |
apt: | |
name: tailscale | |
state: present | |
- name: Check Tailscale status | |
command: tailscale status | |
register: tailscale_status | |
changed_when: false | |
ignore_errors: yes | |
- name: Run tailscale up with pre-authentication | |
command: tailscale up --authkey={{ tailscale_authkey }} | |
register: tailscale_result | |
changed_when: "'Success' in tailscale_result.stdout" | |
when: tailscale_status.rc != 0 or 'Tailscale is stopped' in tailscale_status.stdout | |