Move become: true into esphome role
Move become: true into zigbee2mqtt role Remove become: true from deploy_public_reverse_proxy playbook Remove become: true from deploy_dokuwiki playbook Move become: true from deploy_audio_pi and deploy_light playbooks into roles Remove become: true from deploy_keycloak playbook Move become: true from deploy_automation playbook to mosquitto role
This commit is contained in:
		
					parent
					
						
							
								b56ca3899d
							
						
					
				
			
			
				commit
				
					
						33d1cfca1f
					
				
			
		
					 24 changed files with 119 additions and 20 deletions
				
			
		|  | @ -1,45 +1,60 @@ | |||
| --- | ||||
| - name: Ensure acl is installed | ||||
|   become: true | ||||
|   ansible.builtin.apt: | ||||
|     name: acl | ||||
| 
 | ||||
| - name: Ensure machine-info file is deployed | ||||
|   become: true | ||||
|   ansible.builtin.template: | ||||
|     src: machine-info.j2 | ||||
|     dest: /etc/machine-info | ||||
|     mode: 0644 | ||||
|     mode: "644" | ||||
|     owner: root | ||||
|     group: root | ||||
|   notify: Restart bluetooth service | ||||
| 
 | ||||
| - name: Ensure bluetooth config is deployed | ||||
|   become: true | ||||
|   ansible.builtin.template: | ||||
|     src: main.conf.j2 | ||||
|     dest: /etc/bluetooth/main.conf | ||||
|     mode: 0644 | ||||
|     mode: "644" | ||||
|     owner: root | ||||
|     group: root | ||||
|   notify: Restart bluetooth service | ||||
| 
 | ||||
| - name: Ensure bluetooth service is enabled and started | ||||
|   become: true | ||||
|   ansible.builtin.systemd: | ||||
|     service: bluetooth.service | ||||
|     state: started | ||||
|     enabled: true | ||||
| 
 | ||||
| - name: Ensure audiosink user exists | ||||
|   become: true | ||||
|   ansible.builtin.user: | ||||
|     name: audiosink | ||||
|     groups: | ||||
|       - audio | ||||
| 
 | ||||
| - name: Ensure user services are started without needing to login | ||||
|   become: true | ||||
|   ansible.builtin.command: | ||||
|     cmd: loginctl enable-linger audiosink | ||||
|   changed_when: false | ||||
| 
 | ||||
| - name: Detect if on Raspberry Pi # noqa ignore-errors | ||||
|   ansible.builtin.include_role: | ||||
|     name: raspberry_pi_check | ||||
|   ignore_errors: true | ||||
| 
 | ||||
| - name: Ensure debian archive keyring is installed # noqa no-handler | ||||
|   become: true | ||||
|   when: raspberry_pi_check__cpuinfo.found | ||||
|   ansible.builtin.apt: | ||||
|     deb: https://ftp.debian.org/debian/pool/main/d/debian-archive-keyring/debian-archive-keyring_2021.1.1_all.deb | ||||
| 
 | ||||
| - name: Ensure debian backports repository is enabled | ||||
|   ansible.builtin.include_role: | ||||
|     name: add_apt_repository | ||||
|  | @ -47,94 +62,120 @@ | |||
|     add_apt_repository__https_repo: false | ||||
|     add_apt_repository__repo: "deb http://deb.debian.org/debian {{ ansible_facts.lsb.codename }}-backports main contrib non-free" | ||||
|     add_apt_repository__filename: "{{ ansible_facts.lsb.codename }}-backports.list" | ||||
| 
 | ||||
| - name: Ensure pipewire, wireplumber and libspa-0.2-bluetooth are installed | ||||
|   become: true | ||||
|   ansible.builtin.apt: | ||||
|     name: | ||||
|       - pipewire | ||||
|       - wireplumber | ||||
|       - libspa-0.2-bluetooth | ||||
|     default_release: "{{ ansible_facts.lsb.codename }}-backports" | ||||
| 
 | ||||
| - name: Ensure pipewire user service is enabled and started | ||||
|   become: true | ||||
|   become_user: audiosink | ||||
|   ansible.builtin.systemd: | ||||
|     name: pipewire.service | ||||
|     state: started | ||||
|     enabled: true | ||||
|     scope: user | ||||
| 
 | ||||
| - name: Ensure pipewire-pulse user service is enabled and started | ||||
|   become: true | ||||
|   become_user: audiosink | ||||
|   ansible.builtin.systemd: | ||||
|     name: pipewire-pulse.service | ||||
|     state: started | ||||
|     enabled: true | ||||
|     scope: user | ||||
| 
 | ||||
| - name: Ensure wireplumber user service is enabled | ||||
|   become: true | ||||
|   become_user: audiosink | ||||
|   ansible.builtin.systemd: | ||||
|     name: wireplumber.service | ||||
|     enabled: true | ||||
|     scope: user | ||||
| 
 | ||||
| - name: Ensure speaker-agent dependencies are installed | ||||
|   become: true | ||||
|   ansible.builtin.apt: | ||||
|     name: | ||||
|       - git | ||||
|       - python3-dbus | ||||
| 
 | ||||
| - name: Ensure speaker-agent repository is cloned | ||||
|   become: true | ||||
|   ansible.builtin.git: | ||||
|     repo: https://github.com/fdanis-oss/pw_wp_bluetooth_rpi_speaker.git | ||||
|     dest: /opt/speaker-agent | ||||
|     version: 9a939a23865ea020816017e06fd2290f301c35f9 | ||||
| 
 | ||||
| - name: Ensure .config directory exists | ||||
|   become: true | ||||
|   become_user: audiosink | ||||
|   ansible.builtin.file: | ||||
|     path: /home/audiosink/.config | ||||
|     state: directory | ||||
|     mode: 0700 | ||||
|     mode: "700" | ||||
|     owner: audiosink | ||||
|     group: audiosink | ||||
| 
 | ||||
| - name: Ensure .config/systemd directory exists | ||||
|   become: true | ||||
|   become_user: audiosink | ||||
|   ansible.builtin.file: | ||||
|     path: /home/audiosink/.config/systemd | ||||
|     state: directory | ||||
|     mode: 0755 | ||||
|     mode: "755" | ||||
|     owner: audiosink | ||||
|     group: audiosink | ||||
| 
 | ||||
| - name: Ensure .config/systemd/user directory exists | ||||
|   become: true | ||||
|   become_user: audiosink | ||||
|   ansible.builtin.file: | ||||
|     path: /home/audiosink/.config/systemd/user | ||||
|     state: directory | ||||
|     mode: 0755 | ||||
|     mode: "755" | ||||
|     owner: audiosink | ||||
|     group: audiosink | ||||
| 
 | ||||
| - name: Ensure speaker-agent service file is deployed | ||||
|   become: true | ||||
|   become_user: audiosink | ||||
|   ansible.builtin.copy: | ||||
|     src: speaker-agent.service | ||||
|     dest: /home/audiosink/.config/systemd/user/speaker-agent.service | ||||
|     mode: 0644 | ||||
|     mode: "644" | ||||
|     owner: audiosink | ||||
|     group: audiosink | ||||
|   notify: Restart speaker-agent service | ||||
| 
 | ||||
| - name: Ensure speaker-agent service is enabled and started | ||||
|   become: true | ||||
|   become_user: audiosink | ||||
|   ansible.builtin.systemd: | ||||
|     name: speaker-agent.service | ||||
|     state: started | ||||
|     enabled: true | ||||
|     scope: user | ||||
| 
 | ||||
| # This part is janky, but I don't know how to make the bluetooth service, wireplumber and pipewire | ||||
| # work with each other without being logged in. | ||||
| - name: Ensure getty@tty1 override file is deployed | ||||
|   become: true | ||||
|   ansible.builtin.copy: | ||||
|     src: override.conf | ||||
|     dest: /etc/systemd/system/getty@tty1.service.d/override.conf | ||||
|     mode: 0644 | ||||
|     mode: "644" | ||||
|     owner: root | ||||
|     group: root | ||||
|   notify: Reboot host | ||||
| 
 | ||||
| - name: Ensure autologin for audiosink user is enabled | ||||
|   become: true | ||||
|   ansible.builtin.systemd: | ||||
|     service: getty@tty1.service | ||||
|     enabled: true | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue