Compare commits
	
		
			9 Commits
		
	
	
		
			transcaffe
			...
			6658d7226c
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						
						
							
						
						6658d7226c
	
				 | 
					
					
						|||
| 
						
						
							
						
						36224d0531
	
				 | 
					
					
						|||
| 
						
						
							
						
						24be358a46
	
				 | 
					
					
						|||
| 
						
						
							
						
						c38e4f34dd
	
				 | 
					
					
						|||
| 
						
						
							
						
						10a9779996
	
				 | 
					
					
						|||
| 
						
						
							
						
						b635a00a34
	
				 | 
					
					
						|||
| 
						
						
							
						
						159c4fda30
	
				 | 
					
					
						|||
| 
						
						
							
						
						1e104bf1fb
	
				 | 
					
					
						|||
| 
						
						
							
						
						1417564e1d
	
				 | 
					
					
						
@@ -1,6 +1,6 @@
 | 
				
			|||||||
---
 | 
					---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
authelia_version: 4.34.6
 | 
					authelia_version: 4.36.4
 | 
				
			||||||
authelia_user: authelia
 | 
					authelia_user: authelia
 | 
				
			||||||
authelia_base_dir: /opt/authelia
 | 
					authelia_base_dir: /opt/authelia
 | 
				
			||||||
authelia_domain: authelia.example.org
 | 
					authelia_domain: authelia.example.org
 | 
				
			||||||
@@ -55,6 +55,8 @@ authelia_config_log_level: info
 | 
				
			|||||||
authelia_config_log_format: json
 | 
					authelia_config_log_format: json
 | 
				
			||||||
authelia_config_log_file_path: ~
 | 
					authelia_config_log_file_path: ~
 | 
				
			||||||
authelia_config_log_keep_stdout: false
 | 
					authelia_config_log_keep_stdout: false
 | 
				
			||||||
 | 
					authelia_config_telemetry_metrics_enabled: false
 | 
				
			||||||
 | 
					authelia_config_telemetry_metrics_address: '0.0.0.0:9959'
 | 
				
			||||||
authelia_config_totp_disable: true
 | 
					authelia_config_totp_disable: true
 | 
				
			||||||
authelia_config_totp_issuer: "{{ authelia_domain }}"
 | 
					authelia_config_totp_issuer: "{{ authelia_domain }}"
 | 
				
			||||||
authelia_config_totp_algorithm: sha1
 | 
					authelia_config_totp_algorithm: sha1
 | 
				
			||||||
@@ -76,8 +78,8 @@ authelia_config_ntp_version: 4
 | 
				
			|||||||
authelia_config_ntp_max_desync: 3s
 | 
					authelia_config_ntp_max_desync: 3s
 | 
				
			||||||
authelia_config_ntp_disable_startup_check: false
 | 
					authelia_config_ntp_disable_startup_check: false
 | 
				
			||||||
authelia_config_ntp_disable_failure: false
 | 
					authelia_config_ntp_disable_failure: false
 | 
				
			||||||
authelia_config_authentication_backend_disable_reset_password: false
 | 
					 | 
				
			||||||
authelia_config_authentication_backend_refresh_interval: 5m
 | 
					authelia_config_authentication_backend_refresh_interval: 5m
 | 
				
			||||||
 | 
					authelia_config_authentication_backend_password_reset_disable: false
 | 
				
			||||||
authelia_config_authentication_backend_password_reset_custom_url: ~
 | 
					authelia_config_authentication_backend_password_reset_custom_url: ~
 | 
				
			||||||
authelia_config_authentication_backend_ldap_implementation: custom
 | 
					authelia_config_authentication_backend_ldap_implementation: custom
 | 
				
			||||||
authelia_config_authentication_backend_ldap_url: ldap://127.0.0.1:389
 | 
					authelia_config_authentication_backend_ldap_url: ldap://127.0.0.1:389
 | 
				
			||||||
@@ -153,7 +155,7 @@ authelia_config_notifier_smtp_timeout: 5s
 | 
				
			|||||||
authelia_config_notifier_smtp_sender: "Authelia on {{ authelia_domain }} <admin@{{ authelia_domain }}>"
 | 
					authelia_config_notifier_smtp_sender: "Authelia on {{ authelia_domain }} <admin@{{ authelia_domain }}>"
 | 
				
			||||||
authelia_config_notifier_smtp_identifier: "{{ authelia_domain }}"
 | 
					authelia_config_notifier_smtp_identifier: "{{ authelia_domain }}"
 | 
				
			||||||
authelia_config_notifier_smtp_subject: "[Authelia @ {{ authelia_domain }}] {title}"
 | 
					authelia_config_notifier_smtp_subject: "[Authelia @ {{ authelia_domain }}] {title}"
 | 
				
			||||||
authelia_config_notifier_smtp_startup_check_address: false
 | 
					authelia_config_notifier_smtp_startup_check_address: "authelia-test@{{ authelia_domain }}"
 | 
				
			||||||
authelia_config_notifier_smtp_disable_require_tls: false
 | 
					authelia_config_notifier_smtp_disable_require_tls: false
 | 
				
			||||||
authelia_config_notifier_smtp_disable_html_emails: false
 | 
					authelia_config_notifier_smtp_disable_html_emails: false
 | 
				
			||||||
authelia_config_notifier_smtp_tls_skip_verify: false
 | 
					authelia_config_notifier_smtp_tls_skip_verify: false
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -21,6 +21,7 @@ authelia_top_level_config:
 | 
				
			|||||||
  theme: "{{ authelia_config_theme }}"
 | 
					  theme: "{{ authelia_config_theme }}"
 | 
				
			||||||
  jwt_secret: "{{ authelia_config_jwt_secret }}"
 | 
					  jwt_secret: "{{ authelia_config_jwt_secret }}"
 | 
				
			||||||
  log: "{{ authelia_config_log }}"
 | 
					  log: "{{ authelia_config_log }}"
 | 
				
			||||||
 | 
					  telemetry: "{{ authelia_config_telemetry }}"
 | 
				
			||||||
  totp: "{{ authelia_config_totp }}"
 | 
					  totp: "{{ authelia_config_totp }}"
 | 
				
			||||||
  webauthn: "{{ authelia_config_webauthn }}"
 | 
					  webauthn: "{{ authelia_config_webauthn }}"
 | 
				
			||||||
  duo_api: "{{ authelia_config_duo_api }}"
 | 
					  duo_api: "{{ authelia_config_duo_api }}"
 | 
				
			||||||
@@ -72,6 +73,10 @@ authelia_config_log: >-2
 | 
				
			|||||||
    | combine({"keep_stdout": authelia_config_log_keep_stdout}
 | 
					    | combine({"keep_stdout": authelia_config_log_keep_stdout}
 | 
				
			||||||
      if authelia_config_log_file_path | default(false, true) else {})
 | 
					      if authelia_config_log_file_path | default(false, true) else {})
 | 
				
			||||||
  }}
 | 
					  }}
 | 
				
			||||||
 | 
					authelia_config_telemetry:
 | 
				
			||||||
 | 
					  metrics:
 | 
				
			||||||
 | 
					    enabled: "{{ authelia_config_telemetry_metrics_enabled }}"
 | 
				
			||||||
 | 
					    address: "{{ authelia_config_telemetry_metrics_address }}"
 | 
				
			||||||
authelia_config_totp:
 | 
					authelia_config_totp:
 | 
				
			||||||
  disable: "{{ authelia_config_totp_disable }}"
 | 
					  disable: "{{ authelia_config_totp_disable }}"
 | 
				
			||||||
  issuer: "{{ authelia_config_totp_issuer }}"
 | 
					  issuer: "{{ authelia_config_totp_issuer }}"
 | 
				
			||||||
@@ -101,7 +106,6 @@ authelia_config_ntp:
 | 
				
			|||||||
authelia_config_authentication_backend: >-2
 | 
					authelia_config_authentication_backend: >-2
 | 
				
			||||||
  {{
 | 
					  {{
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "disable_reset_password": authelia_config_authentication_backend_disable_reset_password,
 | 
					 | 
				
			||||||
      "refresh_interval": authelia_config_authentication_backend_refresh_interval,
 | 
					      "refresh_interval": authelia_config_authentication_backend_refresh_interval,
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    | combine({"password_reset": authelia_config_authentication_backend_password_reset}
 | 
					    | combine({"password_reset": authelia_config_authentication_backend_password_reset}
 | 
				
			||||||
@@ -112,6 +116,7 @@ authelia_config_authentication_backend: >-2
 | 
				
			|||||||
  }}
 | 
					  }}
 | 
				
			||||||
authelia_config_authentication_backend_password_reset:
 | 
					authelia_config_authentication_backend_password_reset:
 | 
				
			||||||
  custom_url: "{{ authelia_config_authentication_backend_password_reset_custom_url }}"
 | 
					  custom_url: "{{ authelia_config_authentication_backend_password_reset_custom_url }}"
 | 
				
			||||||
 | 
					  disable: "{{ authelia_config_authentication_backend_password_reset_disable }}"
 | 
				
			||||||
authelia_config_authentication_backend_ldap:
 | 
					authelia_config_authentication_backend_ldap:
 | 
				
			||||||
  implementation: "{{ authelia_config_authentication_backend_ldap_implementation }}"
 | 
					  implementation: "{{ authelia_config_authentication_backend_ldap_implementation }}"
 | 
				
			||||||
  url: "{{ authelia_config_authentication_backend_ldap_url }}"
 | 
					  url: "{{ authelia_config_authentication_backend_ldap_url }}"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
---
 | 
					---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
gitea_version: "1.16.4"
 | 
					gitea_version: "1.17.0"
 | 
				
			||||||
gitea_user: git
 | 
					gitea_user: git
 | 
				
			||||||
gitea_base_path: "/opt/gitea"
 | 
					gitea_base_path: "/opt/gitea"
 | 
				
			||||||
gitea_data_path: "{{ gitea_base_path }}/data"
 | 
					gitea_data_path: "{{ gitea_base_path }}/data"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,7 @@
 | 
				
			|||||||
---
 | 
					---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
jellyfin_user: jellyfin
 | 
					jellyfin_user: jellyfin
 | 
				
			||||||
 | 
					jellyfin_version: 10.8.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
jellyfin_base_path: /opt/jellyfin
 | 
					jellyfin_base_path: /opt/jellyfin
 | 
				
			||||||
jellyfin_config_path: "{{ jellyfin_base_path }}/config"
 | 
					jellyfin_config_path: "{{ jellyfin_base_path }}/config"
 | 
				
			||||||
@@ -10,11 +11,13 @@ jellyfin_media_volumes: []
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
jellyfin_container_name: jellyfin
 | 
					jellyfin_container_name: jellyfin
 | 
				
			||||||
jellyfin_container_image_name: "docker.io/jellyfin/jellyfin"
 | 
					jellyfin_container_image_name: "docker.io/jellyfin/jellyfin"
 | 
				
			||||||
jellyfin_container_image_tag: "latest"
 | 
					jellyfin_container_image_tag: ~
 | 
				
			||||||
jellyfin_container_image_ref: "{{ jellyfin_container_image_name }}:{{ jellyfin_container_image_tag }}"
 | 
					jellyfin_container_image_ref: "{{ jellyfin_container_image_name }}:{{ jellyfin_container_image_tag | default(jellyfin_version, true) }}"
 | 
				
			||||||
jellyfin_container_network_mode: host
 | 
					jellyfin_container_network_mode: host
 | 
				
			||||||
jellyfin_container_networks: ~
 | 
					jellyfin_container_networks: ~
 | 
				
			||||||
jellyfin_container_volumes: "{{ jellyfin_container_base_volumes + jellyfin_media_volumes }}"
 | 
					jellyfin_container_volumes: "{{ jellyfin_container_base_volumes + jellyfin_media_volumes }}"
 | 
				
			||||||
 | 
					jellyfin_container_labels: "{{ jellyfin_container_base_labels | combine(jellyfin_container_extra_labels) }}"
 | 
				
			||||||
 | 
					jellyfin_container_extra_labels: {}
 | 
				
			||||||
jellyfin_container_restart_policy: "unless-stopped"
 | 
					jellyfin_container_restart_policy: "unless-stopped"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
jellyfin_host_directories:
 | 
					jellyfin_host_directories:
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -21,13 +21,18 @@
 | 
				
			|||||||
    name: "{{ jellyfin_container_image_ref }}"
 | 
					    name: "{{ jellyfin_container_image_ref }}"
 | 
				
			||||||
    state: present
 | 
					    state: present
 | 
				
			||||||
    source: pull
 | 
					    source: pull
 | 
				
			||||||
    force_source: "{{ jellyfin_container_image_tag in ['stable', 'unstable'] }}"
 | 
					    force_source: "{{ jellyfin_container_image_tag | default(false, true) }}"
 | 
				
			||||||
 | 
					  register: jellyfin_container_image_pull_result
 | 
				
			||||||
 | 
					  until: jellyfin_container_image_pull_result is succeeded
 | 
				
			||||||
 | 
					  retries: 5
 | 
				
			||||||
 | 
					  delay: 3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- name: Ensure container '{{ jellyfin_container_name }}' is running
 | 
					- name: Ensure container '{{ jellyfin_container_name }}' is running
 | 
				
			||||||
  docker_container:
 | 
					  docker_container:
 | 
				
			||||||
    name: "{{ jellyfin_container_name }}"
 | 
					    name: "{{ jellyfin_container_name }}"
 | 
				
			||||||
    image: "{{ jellyfin_container_image_ref }}"
 | 
					    image: "{{ jellyfin_container_image_ref }}"
 | 
				
			||||||
    user: "{{ jellyfin_uid }}:{{ jellyfin_gid }}"
 | 
					    user: "{{ jellyfin_uid }}:{{ jellyfin_gid }}"
 | 
				
			||||||
 | 
					    labels: "{{ jellyfin_container_labels }}"
 | 
				
			||||||
    volumes: "{{ jellyfin_container_volumes }}"
 | 
					    volumes: "{{ jellyfin_container_volumes }}"
 | 
				
			||||||
    networks: "{{ jellyfin_container_networks | default(omit, True) }}"
 | 
					    networks: "{{ jellyfin_container_networks | default(omit, True) }}"
 | 
				
			||||||
    network_mode: "{{ jellyfin_container_network_mode }}"
 | 
					    network_mode: "{{ jellyfin_container_network_mode }}"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,3 +3,6 @@
 | 
				
			|||||||
jellyfin_container_base_volumes:
 | 
					jellyfin_container_base_volumes:
 | 
				
			||||||
  - "{{ jellyfin_config_path }}:/config:z"
 | 
					  - "{{ jellyfin_config_path }}:/config:z"
 | 
				
			||||||
  - "{{ jellyfin_cache_path }}:/cache:z"
 | 
					  - "{{ jellyfin_cache_path }}:/cache:z"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					jellyfin_container_base_labels:
 | 
				
			||||||
 | 
					  version: "{{ jellyfin_version }}"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -44,22 +44,14 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
- name: Ensure systemd service file for '{{ restic_job_name }}' is templated
 | 
					- name: Ensure systemd service file for '{{ restic_job_name }}' is templated
 | 
				
			||||||
  template:
 | 
					  template:
 | 
				
			||||||
    dest: "/etc/systemd/system/{{ service.unit_name }}.service"
 | 
					    dest: "/etc/systemd/system/{{ restic_systemd_unit_naming_scheme }}.service"
 | 
				
			||||||
    src: "{{ service.file }}"
 | 
					    src: restic.service.j2
 | 
				
			||||||
    owner: root
 | 
					    owner: root
 | 
				
			||||||
    group: root
 | 
					    group: root
 | 
				
			||||||
    mode: 0640
 | 
					    mode: 0640
 | 
				
			||||||
  notify:
 | 
					  notify:
 | 
				
			||||||
    - reload-systemd
 | 
					    - reload-systemd
 | 
				
			||||||
    - trigger-restic
 | 
					    - trigger-restic
 | 
				
			||||||
  loop:
 | 
					 | 
				
			||||||
    - unit_name: "{{ restic_systemd_unit_naming_scheme }}"
 | 
					 | 
				
			||||||
      file: restic.service.j2
 | 
					 | 
				
			||||||
    - unit_name: "{{ restic_systemd_unit_naming_scheme }}-unlock"
 | 
					 | 
				
			||||||
      file: restic-unlock.service.j2
 | 
					 | 
				
			||||||
  loop_control:
 | 
					 | 
				
			||||||
    loop_var: service
 | 
					 | 
				
			||||||
    label: "{{ service.file }}"
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
- name: Ensure systemd service file for '{{ restic_job_name }}' is templated
 | 
					- name: Ensure systemd service file for '{{ restic_job_name }}' is templated
 | 
				
			||||||
  template:
 | 
					  template:
 | 
				
			||||||
@@ -74,11 +66,6 @@
 | 
				
			|||||||
- name: Flush handlers to ensure systemd knows about '{{ restic_job_name }}'
 | 
					- name: Flush handlers to ensure systemd knows about '{{ restic_job_name }}'
 | 
				
			||||||
  meta: flush_handlers
 | 
					  meta: flush_handlers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- name: Ensure systemd service for unlocking repository for '{{ restic_job_name }}' is enabled
 | 
					 | 
				
			||||||
  systemd:
 | 
					 | 
				
			||||||
    name: "{{ restic_systemd_unit_naming_scheme }}-unlock.service"
 | 
					 | 
				
			||||||
    enabled: true
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
- name: Ensure systemd timer for '{{ restic_job_name }}' is activated
 | 
					- name: Ensure systemd timer for '{{ restic_job_name }}' is activated
 | 
				
			||||||
  systemd:
 | 
					  systemd:
 | 
				
			||||||
    name: "{{ restic_systemd_unit_naming_scheme }}.timer"
 | 
					    name: "{{ restic_systemd_unit_naming_scheme }}.timer"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,21 +0,0 @@
 | 
				
			|||||||
[Unit]
 | 
					 | 
				
			||||||
Description={{ restic_job_description }} - Unlock after reboot job
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
[Service]
 | 
					 | 
				
			||||||
Type=oneshot
 | 
					 | 
				
			||||||
User={{ restic_user }}
 | 
					 | 
				
			||||||
WorkingDirectory={{ restic_systemd_working_directory }}
 | 
					 | 
				
			||||||
SyslogIdentifier={{ restic_systemd_syslog_identifier }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Environment=RESTIC_REPOSITORY={{ restic_repo_url }}
 | 
					 | 
				
			||||||
Environment=RESTIC_PASSWORD={{ restic_repo_password }}
 | 
					 | 
				
			||||||
{% if restic_s3_key_id and restic_s3_access_key %}
 | 
					 | 
				
			||||||
Environment=AWS_ACCESS_KEY_ID={{ restic_s3_key_id }}
 | 
					 | 
				
			||||||
Environment=AWS_SECRET_ACCESS_KEY={{ restic_s3_access_key }}
 | 
					 | 
				
			||||||
{% endif %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
ExecStartPre=-/bin/sh -c '/usr/bin/restic snapshots || /usr/bin/restic init'
 | 
					 | 
				
			||||||
ExecStart=/usr/bin/restic unlock
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
[Install]
 | 
					 | 
				
			||||||
WantedBy=multi-user.target
 | 
					 | 
				
			||||||
		Reference in New Issue
	
	Block a user