1
0

change searxng role variable structure

This commit is contained in:
cuqmbr 2025-07-02 00:08:54 +03:00
parent 993fc0b1d0
commit 1a04e81df0
Signed by: cuqmbr
GPG Key ID: 1F62396D020F375C
7 changed files with 162 additions and 173 deletions

View File

@ -29,20 +29,17 @@ users:
opendoas_settings: "permit nopass ansible" opendoas_settings: "permit nopass ansible"
searxng_homedir: /opt/searxng
searxng_git_commit: 60be0f453e9e4a5fc48aeb4706e75af0a4047b36
searxng_settings: searxng_settings:
homedir: /opt/searxng
git_commit: 39c50dc013944a0a27b4354c23f406956ac45971
config:
use_default_settings: true use_default_settings: true
general: general:
debug: false debug: false
instance_name: "cuqmbr's SearXNG" instance_name: "cuqmbr's SearXNG"
donation_url: "https://cuqmbr.xyz/en/donate" donation_url: "https://cuqmbr.xyz/en/donate"
contact_url: "https://cuqmbr.xyz/en/contact" contact_url: "https://cuqmbr.xyz/en/contact"
enable_metrics: true enable_metrics: true
search: search:
safe_search: 0 safe_search: 0
autocomplete: "" autocomplete: ""
@ -50,7 +47,6 @@ searxng_settings:
- html - html
- csv - csv
- json - json
server: server:
base_url: "https://searxng.dev.cuqmbr.xyz" base_url: "https://searxng.dev.cuqmbr.xyz"
bind_address: "0.0.0.0" bind_address: "0.0.0.0"
@ -73,7 +69,6 @@ searxng_settings:
X-Robots-Tag: noindex, nofollow X-Robots-Tag: noindex, nofollow
Referrer-Policy: no-referrer Referrer-Policy: no-referrer
limiter: true limiter: true
redis: redis:
url: !vault | url: !vault |
$ANSIBLE_VAULT;1.1;AES256 $ANSIBLE_VAULT;1.1;AES256
@ -93,17 +88,14 @@ searxng_settings:
37313163613733333835303363363932343264356662633262373661346463653936316162636332 37313163613733333835303363363932343264356662633262373661346463653936316162636332
33633237656362363938653735313834376537333532343039653038326563633063323965633463 33633237656362363938653735313834376537333532343039653038326563633063323965633463
37366662313263396637 37366662313263396637
ui: ui:
static_use_hash: true static_use_hash: true
results_on_new_tab: true results_on_new_tab: true
categories_as_tabs: categories_as_tabs:
general: general:
images: images:
videos: videos:
files: files:
plugins: plugins:
searx.plugins.calculator.SXNGPlugin: searx.plugins.calculator.SXNGPlugin:
active: true active: true

View File

@ -1,5 +1,7 @@
--- ---
forgejo_runner_settings:
forgejo_runner_default_settings: forgejo_runner_default_settings:
clean_binaries: false clean_binaries: false
force_register: false force_register: false

View File

@ -0,0 +1 @@
tasks/main.yml no-handler

View File

@ -1,22 +1,19 @@
--- ---
searxng_homedir: /opt/searxng
searxng_git_commit: c185d076894ebbdb5db921c448c240d04915847b
searxng_settings: searxng_settings:
searxng_default_settings:
homedir: /opt/searxng
git_commit: c185d076894ebbdb5db921c448c240d04915847b
config:
# SearXNG settings # SearXNG settings
use_default_settings: true use_default_settings: true
general: general:
debug: false debug: false
instance_name: "cuqmbr's SearXNG" instance_name: "cuqmbr's SearXNG"
search: search:
safe_search: 2 safe_search: 2
autocomplete: 'duckduckgo' autocomplete: 'duckduckgo'
server: server:
secret_key: "ultrasecretkey_change_me" secret_key: "ultrasecretkey_change_me"
limiter: false limiter: false
@ -24,19 +21,15 @@ searxng_settings:
# public URL of the instance, to ensure correct inbound links. # public URL of the instance, to ensure correct inbound links.
# Is overwritten by ${SEARXNG_URL}. # Is overwritten by ${SEARXNG_URL}.
base_url: http://example.com/location base_url: http://example.com/location
# redis: # redis:
# URL to connect redis database. Is overwritten by ${SEARXNG_REDIS_URL}. # URL to connect redis database. Is overwritten by ${SEARXNG_REDIS_URL}.
# url: unix:///usr/local/searxng-redis/run/redis.sock?db=0 # url: unix:///usr/local/searxng-redis/run/redis.sock?db=0
ui: ui:
static_use_hash: true static_use_hash: true
# preferences: # preferences:
# lock: # lock:
# - autocomplete # - autocomplete
# - method # - method
enabled_plugins: enabled_plugins:
- 'Hash plugin' - 'Hash plugin'
- 'Self Information' - 'Self Information'
@ -44,6 +37,5 @@ searxng_settings:
- 'Ahmia blacklist' - 'Ahmia blacklist'
# - 'Hostnames plugin' # see 'hostnames' configuration below # - 'Hostnames plugin' # see 'hostnames' configuration below
# - 'Open Access DOI rewrite' # - 'Open Access DOI rewrite'
# plugins: # plugins:
# - only_show_green_results # - only_show_green_results

View File

@ -10,3 +10,5 @@ platforms:
- /sys/fs/cgroup:/sys/fs/cgroup:rw - /sys/fs/cgroup:/sys/fs/cgroup:rw
cgroupns_mode: host cgroupns_mode: host
privileged: true privileged: true
published_ports:
- 127.0.0.1:80:8888

View File

@ -1,5 +1,11 @@
--- ---
- name: Combine default and user settings, decrypt vault.
ansible.builtin.set_fact:
searxng_settings: "{{ searxng_default_settings |
ansible.builtin.combine(searxng_settings, recursive=true) }}"
no_log: true
- name: Install dependencies. - name: Install dependencies.
ansible.builtin.apt: ansible.builtin.apt:
name: name:
@ -23,14 +29,14 @@
password: ! password: !
system: true system: true
create_home: true create_home: true
home: "{{ searxng_homedir }}" home: "{{ searxng_settings.homedir }}"
shell: /usr/sbin/nologin shell: /usr/sbin/nologin
- name: Set searxng_source and searxng_pyenv variable. - name: Set searxng_source and searxng_pyenv variable.
ansible.builtin.set_fact: ansible.builtin.set_fact:
searxng_source: "{{ searxng_homedir }}/src" searxng_source: "{{ searxng_settings.homedir }}/src"
searxng_pyenv: "{{ searxng_homedir }}/pyenv" searxng_pyenv: "{{ searxng_settings.homedir }}/pyenv"
searxng_compiled: "{{ searxng_homedir }}/compiled" searxng_compiled: "{{ searxng_settings.homedir }}/compiled"
- name: Clone searxng git repository. - name: Clone searxng git repository.
ansible.builtin.git: ansible.builtin.git:
@ -38,7 +44,7 @@
repo: https://github.com/searxng/searxng.git repo: https://github.com/searxng/searxng.git
dest: "{{ searxng_source }}" dest: "{{ searxng_source }}"
depth: 1 depth: 1
version: "{{ searxng_git_commit }}" version: "{{ searxng_settings.git_commit }}"
force: true force: true
single_branch: true single_branch: true
register: git_clone_result register: git_clone_result
@ -54,11 +60,13 @@
- pyyaml - pyyaml
state: present state: present
- name: Compile searxng.
when: git_clone_result.changed
block:
- name: Remove searxng settings file. - name: Remove searxng settings file.
ansible.builtin.file: ansible.builtin.file:
path: /etc/searxng/settings.yml path: /etc/searxng/settings.yml
state: absent state: absent
when: git_clone_result.changed
- name: Compile searxng. - name: Compile searxng.
ansible.builtin.pip: ansible.builtin.pip:
@ -72,7 +80,6 @@
ansible.builtin.file: ansible.builtin.file:
path: "{{ searxng_compiled }}" path: "{{ searxng_compiled }}"
state: absent state: absent
changed_when: false
- name: Install new program files. - name: Install new program files.
ansible.builtin.copy: ansible.builtin.copy:
@ -82,7 +89,6 @@
owner: searxng owner: searxng
group: searxng group: searxng
mode: "0775" mode: "0775"
changed_when: false
- name: Create searxng settings directory. - name: Create searxng settings directory.
ansible.builtin.file: ansible.builtin.file:
@ -92,12 +98,6 @@
mode: "0775" mode: "0775"
path: /etc/searxng path: /etc/searxng
- name: Decrypt secrets in settings file.
ansible.builtin.set_fact:
searxng_settings: >-
{{ searxng_settings | combine(searxng_settings, recursive=true) }}
no_log: true
- name: Install searxng settings file. - name: Install searxng settings file.
ansible.builtin.template: ansible.builtin.template:
src: settings.yml.j2 src: settings.yml.j2

View File

@ -1,4 +1,4 @@
--- ---
# Managed with Ansible # Managed with Ansible
{{ searxng_settings | ansible.builtin.to_nice_yaml(indent=2, width=80) }} {{ searxng_settings.config | ansible.builtin.to_nice_yaml(indent=2, width=80) }}