add ansible role for filebrowse

This commit is contained in:
root
2022-10-07 15:28:08 +00:00
parent 1237844dbf
commit e651ebc408
5 changed files with 92 additions and 0 deletions

4
filebrowser.yaml Normal file
View File

@@ -0,0 +1,4 @@
---
- hosts: all
roles:
- filebrowser

1
hosts Normal file
View File

@@ -0,0 +1 @@
localhost

View File

@@ -0,0 +1,11 @@
This was created for adding easy file transer on an EVE-NG host.
It adds a web interface to upload/download images.
After upload or rename, it will run /opt/unetlab/wrappers/unl-wrapper -a fixpermissions.
It creates a default login of admin/admin.
To access, http://\<eve-ng host\>:8899

View File

@@ -0,0 +1,10 @@
[Unit]
Description=File browser
After=network.target
[Service]
User=root
ExecStart=/usr/local/bin/filebrowser --database /etc/filebrowser/filebrowser.db -r /opt/unetlab
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,66 @@
---
- name: get filebrowser binary
get_url:
url: "https://github.com/filebrowser/filebrowser/releases/download/v2.16.1/linux-amd64-filebrowser.tar.gz"
dest: "/root/linux-amd64-filebrowser.tar.gz"
tags: filebrowser
register: filebrowser_download
- name: make filebrowser directory
file:
path: /root/filebrowser
state: directory
mode: 0755
register: filebrowser_directory
when: filebrowser_download
- name: unpack filebrowser
unarchive:
copy: no
dest: /root/filebrowser
src: "/root/linux-amd64-filebrowser.tar.gz"
tags: filebrowser
when: filebrowser_directory
register: filebrowser_unpack
- name: copy to usr bin
copy:
src: /root/filebrowser/filebrowser
dest: /usr/local/bin/filebrowser
owner: root
group: root
mode: a+x
tags: filebrowser
when: filebrowser_unpack
register: filebrowser_copy
- name: create filebrowser directory
file:
path: /etc/filebrowser
state: directory
mode: 0755
when: filebrowser_copy
register: filebrowser_etc
- name: filebrowser config
command: /usr/local/bin/filebrowser -d /etc/filebrowser/filebrowser.db {{ item }}
with_items:
- config init -a 0.0.0.0 -p 8899
- users add admin admin --perm.admin
- cmds add "after_upload" "/opt/unetlab/wrappers/unl_wrapper -a fixpermissions"
register: filebrowser_init
when: filebrowser_etc
- name: copy systemd unit
copy:
src: "{{ role_path }}/files/filebrowser.service"
dest: "/etc/systemd/system/filebrowser.service"
owner: root
group: root
tags: filebrowser
when: filebrowser_init
register: filebrowser_systemd
- name: enable filebrowser service
systemd:
daemon_reload: yes
enabled: yes
state: started
name: filebrowser.service
tags: filebrowser
when: filebrowser_systemd