Jelajahi Sumber

[paperless] First version of paperless config

Colin Powell 3 tahun lalu
induk
melakukan
1b565272e7

+ 35 - 0
ansible/roles/gotenberg/tasks/main.yml

@@ -0,0 +1,35 @@
+---
+- name: Dependencies installed
+  community.general.pkgng:
+    name: "git go chromimum pdftk qpdf unoconv"
+    state: latest
+
+- name: Gotenberg source cloned
+  git:
+    repo: "https://github.com/gotenberg/gotenberg.git"
+    dest: /usr/local/src/
+    update: yes
+    force: yes
+
+- name: Gotenberg built
+  shell:
+    cmd: go build -o gotenberg -ldflags "-X 'github.com/gotenberg/gotenberg/v7/cmd.Version=7.4.3'" cmd/gotenberg/main.go
+    chdir: /usr/local/src/gotenberg
+
+- name: Gotenberg installed
+  copy:
+    src: /usr/local/src/gotenberg/gotenberg
+    dest: /usr/local/bin/gotenberg
+    owner: root
+    mode: 0744
+
+- name: Gotenberg rc file installed ansible.builtin.copy:
+    src: gotenberg.rc
+    dest: /usr/local/etc/rc.d/gotenberg
+    mode: a+x
+
+- name: Gotenberg enabled
+  shell: sysrc gotenberg_enable="YES"
+
+- name: Gotenberg started
+  service: name=gotenberg state=started

+ 21 - 0
ansible/roles/paperless/files/paperless-web.rc

@@ -0,0 +1,21 @@
+#!/bin/sh
+set -xv
+exec 1>/tmp/paperless-web.rclog 2>&1
+
+# REQUIRE: LOGIN NETWORKING DAEMON
+# KEYWORD: shutdown
+
+. /etc/rc.subr
+
+name="paperless-web"
+rcvar="paperless-web_enable"
+paperless_chdir="/usr/local/src/paperless/src"
+
+pidfile="/var/run/paperless-web.pid"
+procname="daemon"
+
+start_cmd="/usr/sbin/daemon -r -P ${pidfile} $command"
+command="/usr/local/bin/gunicorn paperless.agi:application -w 4"
+
+load_rc_config $name
+run_rc_command "$1"

+ 42 - 0
ansible/roles/paperless/tasks/main.yml

@@ -0,0 +1,42 @@
+---
+- name: Dependencies installed
+  community.general.pkgng:
+    name: "git rust py38-cffi py38-cryptography py38-lxml py38-joblib py38-numpy py38-pip py38-pycparser py38-pyinotify py38-scikit-learn py38-scipy py38-setuptools py38-six py38-sqlite3 python38 py38-psycopg"
+    state: latest
+
+- name: Paperless-ng source cloned
+  git:
+    repo: "https://github.com/jonaswinkler/paperless-ng"
+    dest: /usr/local/src/
+    update: yes
+    force: yes
+
+- name: Requirements up to date
+  pip:
+    requirements: /usr/local/src/paperless-ng/requirements.txt
+    executable: pip
+
+
+- name: Paperless-web rc file installed
+  ansible.builtin.copy:
+    src: paperless.rc
+    dest: /usr/local/etc/rc.d/paperless-web
+    mode: a+x
+
+- name: Paperless-tasks rc file installed
+  ansible.builtin.copy:
+    src: paperless-tasks.rc
+    dest: /usr/local/etc/rc.d/paperless-tasks
+    mode: a+x
+
+- name: Paperless-consumer rc file installed
+  ansible.builtin.copy:
+    src: paperless-consumer.rc
+    dest: /usr/local/etc/rc.d/paperless-consumer
+    mode: a+x
+
+- name: Paperless enabled
+  shell: sysrc paperless_enable="YES"
+
+- name: Paperless started
+  service: name=paperless state=started