Files
Terraform/roles/lib/setup-netbird.yml

55 lines
1.3 KiB
YAML

- name: Install required packages
apt:
name:
- curl
- gnupg
- ca-certificates
state: present
update_cache: no
- name: Add repository with key
ansible.builtin.deb822_repository:
name: netbird
types: [deb]
uris: "https://pkgs.netbird.io/debian"
components: [main]
suites: ["stable"]
signed_by: https://pkgs.netbird.io/debian/public.key
state: present
enabled: true
- name: Install netbird
apt:
name:
- netbird
state: present
update_cache: yes
- name: Enable netbird service
systemd:
name: netbird
state: started
enabled: yes
- name: Check NetBird service status
service_facts:
services:
- Netbird
register: netbird_status
- name: Display status
retries: 5
delay: 10
debug:
var: netbird_status.ansible_facts.services.Netbird.state
failed_when: netbird_status.ansible_facts.services.Netbird.state != "running"
- name: Check NetBird status
ansible.builtin.command: netbird status
register: netbird_status
ignore_errors: yes
- name: Start NetBird if needed
ansible.builtin.command: netbird up --management-url https://api.netbird.io --setup-key "{{ netbird_setup_key }}"
when: "'Daemon status: NeedsLogin' in netbird_status.stdout"