Skip to content

Commit

Permalink
Unifi: Refactor to Unifi Network Application image
Browse files Browse the repository at this point in the history
  • Loading branch information
owine committed Nov 7, 2023
1 parent 51ffe9f commit 5c594ce
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 1 deletion.
17 changes: 16 additions & 1 deletion roles/unifi/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,15 @@

unifi_name: unifi

################################
# Settings
################################

unifi_mongo_user: "unifi"
unifi_mongo_pass: "password4321"
unifi_mongo_port: 27017
unifi_mongo_dbname: "unifi:"

################################
# Paths
################################
Expand Down Expand Up @@ -65,7 +74,8 @@ unifi_docker_container: "{{ unifi_name }}"
# Image
unifi_docker_image_pull: true
unifi_docker_image_tag: "latest"
unifi_docker_image: "lscr.io/linuxserver/unifi-controller:{{ unifi_docker_image_tag }}"
unufi_docker_image_repo: "lscr.io/linuxserver/unifi-network-application"
unifi_docker_image: "{{ unifi_docker_image_repo }}:{{ unifi_docker_image_tag }}"

# Ports
unifi_docker_ports_defaults:
Expand All @@ -81,6 +91,11 @@ unifi_docker_envs_default:
PUID: "{{ uid }}"
PGID: "{{ gid }}"
TZ: "{{ tz }}"
MONGO_USER: "{{ unifi_mongo_user }}"
MONGO_PASS: "{{ unifi_mongo_pass }}"
MONGO_HOST: "{{ unifi_name }}_mongo"
MONGO_PORT: "{{ unifi_mongo_port }}"
MONGO_DBNAME: "{{ unifi_mongo_dbname }}"
unifi_docker_envs_custom: {}
unifi_docker_envs: "{{ unifi_docker_envs_default
| combine(unifi_docker_envs_custom) }}"
Expand Down
18 changes: 18 additions & 0 deletions roles/unifi/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,24 @@
dns_zone: "{{ lookup('vars', role_name + '_dns_zone') }}"
dns_proxy: "{{ lookup('vars', role_name + '_dns_proxy') }}"

- name: "Unifi | Import init-mongo.js"
ansible.builtin.template:
src: init-mongo.js.j2
dest: '{{ unifi_paths_location }}/init-mongo.js'
owner: "{{ user.name }}"
group: "{{ user.name }}"
mode: "0775"
force: yes

- name: MongoDB Role
ansible.builtin.include_role:
name: mongodb
vars:
mongodb_instances: ["{{ unifi_name }}_mongo"]
mongodb_paths_location: "{{ server_appdata_path }}/{{ unifi_name }}"
mongodb_docker_image_tag: "4.4"
mongodb_docker_volumes_custom: ["/opt/unifi/init-mongo.js:/docker-entrypoint-initdb.d/init-mongo.js:ro"]

- name: Remove existing Docker container
ansible.builtin.include_tasks: "{{ resources_tasks_path }}/docker/remove_docker_container.yml"

Expand Down
1 change: 1 addition & 0 deletions roles/unifi/templates/init-mongo.js.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
db.getSiblingDB("{{ unifi_mongo_ dbname }}").createUser({user: "{{ unifi_mongo_user }}", pwd: "{{ unifi_mongo_pass }}", roles: [{role: "dbOwner", db: "{{ unifi_mongo_dbname }}"}, {role: "dbOwner", db: "{{ unifi_mongo_dbname }}_stat"}]});

0 comments on commit 5c594ce

Please sign in to comment.