main.yml 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. ---
  2. - name: Dependencies installed
  3. community.general.pkgng:
  4. 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,ImageMagick7-nox11,mime-support,optipng,gnupg,liberation-fonts-ttf,xorg-fonts-truetype,unpaper,ghostscript9-base,qpdf,icc-profiles-adobe-cs4,icc-profiles-openicc,icc-profiles-basiccolor,libxml2,pngquant,tesseract,go,gnuplot,chromium,pdftk,libreoffice,unoconv,npm
  5. state: latest
  6. - name: Paperless-ng source cloned
  7. git:
  8. repo: "https://github.com/jonaswinkler/paperless-ng"
  9. dest: /usr/local/src/paperless-ng/
  10. update: yes
  11. force: yes
  12. - name: Scikit and scipy commented out of requierments
  13. shell:
  14. chdir: /usr/local/src/paperless-ng
  15. cmd: 'sed -i -e "/scikit/d" requirements.txt && sed -i -e "/scipy/d" requirements.txt'
  16. warn: false
  17. - name: Requirements up to date
  18. pip:
  19. requirements: /usr/local/src/paperless-ng/requirements.txt
  20. executable: pip
  21. - name: Nginx location file installed
  22. copy:
  23. src: nginx-location.conf
  24. dest: /usr/local/etc/nginx/locations/paperless.conf
  25. mode: 0644
  26. notify: Nginx restarted
  27. - name: Paperless conf file installed
  28. template:
  29. src: paperless.conf.j2
  30. dest: /usr/local/etc/paperless.conf
  31. owner: root
  32. mode: 0644
  33. - name: Paperless frontend built
  34. shell:
  35. cmd: setenv NG_CLI_ANALYTICS ci && npm install && ./node_modules/.bin/ng build --prod
  36. chdir: /usr/local/src/paperless/src-ui
  37. - name: Paperless migrations up to date
  38. command: python3.8 /usr/local/src/paperless-ng/src/manage.py migrate
  39. - name: Paperless static files copied
  40. command: python3.8 /usr/local/src/paperless-ng/src/manage.py collectstatic --noinput
  41. - name: Gotenberg source cloned
  42. git:
  43. repo: "https://github.com/gotenberg/gotenberg.git"
  44. dest: /usr/local/src/gotenberg/
  45. update: yes
  46. force: yes
  47. - name: Gotenberg binary built
  48. shell:
  49. chdir: /usr/local/src/gotenberg/cmd/gotenberg
  50. cmd: go build .
  51. - name: Gotenberg installed
  52. ansible.builtin.copy:
  53. src: /usr/local/src/gotenberg/cmd/gotenberg/gotenberg
  54. dest: /usr/local/bin/gotenberg
  55. remote_src: yes
  56. mode: a+x
  57. - name: Tika server installed
  58. get_url:
  59. url: https://dlcdn.apache.org/tika/2.3.0/tika-server-standard-2.3.0.jar
  60. dest: /usr/local/bin/
  61. mode: a+x
  62. - name: Paperless immortal file installed
  63. ansible.builtin.copy:
  64. src: immortal-paperless.yml
  65. dest: /usr/local/etc/immortal/paperless.yml
  66. notify: Immortal restarted
  67. - name: qCluster immortal file installed
  68. ansible.builtin.copy:
  69. src: immortal-qcluster.yml
  70. dest: /usr/local/etc/immortal/qcluster.yml
  71. notify: Immortal restarted
  72. - name: Tika immortal file installed
  73. ansible.builtin.copy:
  74. src: immortal-tika.yml
  75. dest: /usr/local/etc/immortal/tika.yml
  76. notify: Immortal restarted
  77. - name: Gotenberg immortal file installed
  78. ansible.builtin.copy:
  79. src: immortal-gotenberg.yml
  80. dest: /usr/local/etc/immortal/gotenberg.yml
  81. notify: Immortal restarted
  82. - name: Consumer immortal file installed
  83. ansible.builtin.copy:
  84. src: immortal-consumer.yml
  85. dest: /usr/local/etc/immortal/consumer.yml
  86. notify: Immortal restarted