mirror of
				https://github.com/kevinveenbirkenbach/computer-playbook.git
				synced 2025-11-04 12:18:17 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
- name: flush handlers to ensure that friendica is up before friendica addon configuration
 | 
						|
  meta: flush_handlers
 | 
						|
 | 
						|
- name: Build friendica_addons based on features
 | 
						|
  set_fact:
 | 
						|
    friendica_addons: >-
 | 
						|
      {{
 | 
						|
        friendica_addons | default([])
 | 
						|
        + [{
 | 
						|
            'name': item.key,
 | 
						|
            'enabled': (
 | 
						|
              applications | get_app_conf(application_id, 'features.oidc', True)
 | 
						|
                if item.key == 'keycloakpassword'
 | 
						|
              else applications | get_app_conf(application_id, 'features.ldap', True)
 | 
						|
                if item.key == 'ldapauth'
 | 
						|
              else (item.value.enabled if item.value is mapping and 'enabled' in item.value else False)
 | 
						|
            )
 | 
						|
          }]
 | 
						|
      }}
 | 
						|
  loop: "{{ applications | get_app_conf(application_id, 'addons', True) | dict2items }}"
 | 
						|
  loop_control:
 | 
						|
    label: "{{ item.key }}"
 | 
						|
 | 
						|
- name: Ensure Friendica addons are in sync
 | 
						|
  command: >
 | 
						|
    docker compose exec --user {{ friendica_user }}
 | 
						|
    application
 | 
						|
    bin/console addon
 | 
						|
    {{ 'enable' if item.enabled else 'disable' }}
 | 
						|
    {{ item.name }}
 | 
						|
  args:
 | 
						|
    chdir: "{{ docker_compose.directories.instance }}"
 | 
						|
  loop: "{{ friendica_addons }}"
 | 
						|
  loop_control:
 | 
						|
    label: "{{ item.name }}" |