From e65e306939287dc7b70f41f87f51e9021a382621 Mon Sep 17 00:00:00 2001 From: A Holt Date: Sat, 7 Jul 2018 14:53:30 -0400 Subject: [PATCH 1/9] Update calibre-serve.service.j2 --- roles/calibre/templates/calibre-serve.service.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/calibre/templates/calibre-serve.service.j2 b/roles/calibre/templates/calibre-serve.service.j2 index 97e10d6d3..db62f5a31 100644 --- a/roles/calibre/templates/calibre-serve.service.j2 +++ b/roles/calibre/templates/calibre-serve.service.j2 @@ -6,7 +6,7 @@ After=syslog.target network.target local-fs.target Type=forking PIDFile=/var/run/calibre.pid TimeoutStartSec=400 -ExecStart=/usr/bin/calibre-server --daemonize --log=/var/log/calibre.log --pidfile=/var/run/calibre.pid --port={{ calibre_port }} {{ calibre_dbpath }} +ExecStart=/usr/bin/calibre-server --daemonize --log=/var/log/calibre.log --pidfile=/var/run/calibre.pid --port={{ calibre_port }} --enable-auth --userdb={{ calibre_userdb }} {{ calibre_dbpath }} [Install] TimeoutStartSec=900 From e5931eb8ef00ed201d8dcf6c4e3a7da761f0981c Mon Sep 17 00:00:00 2001 From: A Holt Date: Sat, 7 Jul 2018 14:57:43 -0400 Subject: [PATCH 2/9] Update main.yml --- roles/calibre/defaults/main.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/roles/calibre/defaults/main.yml b/roles/calibre/defaults/main.yml index f135ee6f2..73ed87fea 100644 --- a/roles/calibre/defaults/main.yml +++ b/roles/calibre/defaults/main.yml @@ -5,7 +5,10 @@ calibre_web_path: calibre # In addition to: http://box:8080 http://box/books box/libros box/livres box/livros box/liv calibre_dbpath: "{{ content_base }}/calibre" -# i.e. /library/calibre +# i.e. /library/calibre (holds metadata.db + book directories + our users.sqlite) + +calibre_userdb: "{{ calibre_dbpath }}/users.sqlite" +# i.e. /library/calibre/users.sqlite calibre_sample_book: "Metamorphosis-jackson.epub" # Must be downloadable from http://download.iiab.io/packages From 13762ec7b45fddea74be16a4fd70fa11d6d4e112 Mon Sep 17 00:00:00 2001 From: A Holt Date: Sat, 7 Jul 2018 15:01:15 -0400 Subject: [PATCH 3/9] Update main.yml --- roles/calibre/tasks/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/roles/calibre/tasks/main.yml b/roles/calibre/tasks/main.yml index 74c10c428..4698b6984 100644 --- a/roles/calibre/tasks/main.yml +++ b/roles/calibre/tasks/main.yml @@ -32,7 +32,7 @@ # - run testing branch for Ubuntu 16.04: scripts/calibre-install-latest.sh # - run unstable branch for Debian etc: scripts/calibre-install-unstable.sh -- name: Create calibre-serve.service and calibre.conf +- name: Create calibre-serve.service, calibre.conf, users.sqlite template: src: "{{ item.src }}" dest: "{{ item.dest }}" @@ -44,6 +44,7 @@ with_items: - { src: 'calibre-serve.service.j2', dest: '/etc/systemd/system/calibre-serve.service', mode: '0644'} - { src: 'calibre.conf', dest: '/etc/{{ apache_config_dir }}', mode: '0644'} + - { src: 'users.sqlite', dest: '{{ calibre_userdb }}', mode: '0644'} - name: Force systemd to reread configs systemd: From 612c5521680d487fd7be3d610f4d5813184a10d5 Mon Sep 17 00:00:00 2001 From: A Holt Date: Sat, 7 Jul 2018 15:07:19 -0400 Subject: [PATCH 4/9] Add files via upload Contains 1 user with WRITE permissions: Admin/changeme Contains 5 users with READ-only permissions: box/box h/h ht/ht m/m mx/mx p/p pe/pe --- roles/calibre/templates/users.sqlite | Bin 0 -> 12288 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 roles/calibre/templates/users.sqlite diff --git a/roles/calibre/templates/users.sqlite b/roles/calibre/templates/users.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..5dc597dbe52ab6976a95faa81a8038cdaffd6959 GIT binary patch literal 12288 zcmeI0J#W)M7=X`lJ}V{HD1#@YQ^e3n1vPb2Dod!i!Jt4A8rPBN6gi2(mU51XU6IJj z#=;-rPw)r2z{JFcSYTp>jk8fANK{*>Q{g@NzU=ek_a2{z^J%wbc?NklnNr;&BHBhA zhwc%A5NjgDv%E|kYb2K)RtNncN2P6aJ9V7L-%%nzNBKE^7d05JfdMc82EYIq00UqE z41fVJ00#a^1FyPVMi2z}Zk~JdDj;1_R zRC1y=+p>B_9xG?Nk@wg-HHfA>)kx0BdUmRst07^FiH8CEL zUI9#V10Wv60_0Q<6^r2%OwaT-5Y_#7L~@02498eQ)TLT29>K2=bVg?z2r=HoqeKn~ zH^Pa?BWl@0Q@5WRbUmD!6gMN=Uo^NJDwRUkU@~LJT0o*yj}K^zt>!GgK=>Q}fj{7n z_&xrDFYu@9w#Xq~FaQR?02lxRU;qq&0WbgtzyKHk1OJ186puM48FXh-jgP)-xQ3e12 literal 0 HcmV?d00001 From 9de8f51f1900be306b333875ee86c92e667d6f1d Mon Sep 17 00:00:00 2001 From: A Holt Date: Sat, 7 Jul 2018 15:49:46 -0400 Subject: [PATCH 5/9] Ansible's template module won't copy binary files --- roles/calibre/tasks/main.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/roles/calibre/tasks/main.yml b/roles/calibre/tasks/main.yml index 4698b6984..4fc1f2820 100644 --- a/roles/calibre/tasks/main.yml +++ b/roles/calibre/tasks/main.yml @@ -32,7 +32,7 @@ # - run testing branch for Ubuntu 16.04: scripts/calibre-install-latest.sh # - run unstable branch for Debian etc: scripts/calibre-install-unstable.sh -- name: Create calibre-serve.service, calibre.conf, users.sqlite +- name: Create calibre-serve.service and calibre.conf template: src: "{{ item.src }}" dest: "{{ item.dest }}" @@ -44,7 +44,14 @@ with_items: - { src: 'calibre-serve.service.j2', dest: '/etc/systemd/system/calibre-serve.service', mode: '0644'} - { src: 'calibre.conf', dest: '/etc/{{ apache_config_dir }}', mode: '0644'} - - { src: 'users.sqlite', dest: '{{ calibre_userdb }}', mode: '0644'} + +- name: Copy template userdb to /library/calibre/users.sqlite + copy: + src: /opt/iiab/iiab/roles/calibre/templates/users.sqlite + dest: "{{ calibre_userdb }}" + owner: root + group: root + mode: 0644 - name: Force systemd to reread configs systemd: From 11757ddb86b2100ba6d02367a35434496c42e10e Mon Sep 17 00:00:00 2001 From: A Holt Date: Sat, 7 Jul 2018 15:54:44 -0400 Subject: [PATCH 6/9] Update main.yml --- roles/calibre/tasks/main.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/roles/calibre/tasks/main.yml b/roles/calibre/tasks/main.yml index 4fc1f2820..9a7db6efa 100644 --- a/roles/calibre/tasks/main.yml +++ b/roles/calibre/tasks/main.yml @@ -40,10 +40,11 @@ group: root mode: "{{ item.mode }}" backup: no - register: calibre_config +# register: calibre_config with_items: - { src: 'calibre-serve.service.j2', dest: '/etc/systemd/system/calibre-serve.service', mode: '0644'} - { src: 'calibre.conf', dest: '/etc/{{ apache_config_dir }}', mode: '0644'} + when: (not calib_executable.stat.exists) - name: Copy template userdb to /library/calibre/users.sqlite copy: @@ -52,11 +53,13 @@ owner: root group: root mode: 0644 + when: (not calib_executable.stat.exists) - name: Force systemd to reread configs systemd: daemon_reload: yes - when: calibre_config.changed + when: (not calib_executable.stat.exists) +# when: calibre_config.changed # 2. STOP CALIBRE SERVICE IF IT EXISTS (REQUIRED FOR DB ACTIVITY...AND IF not calibre_enabled) From 9604076d6f9367fb6f31254e977b1f22117d2ca0 Mon Sep 17 00:00:00 2001 From: A Holt Date: Sat, 7 Jul 2018 16:06:34 -0400 Subject: [PATCH 7/9] Update main.yml --- roles/calibre/defaults/main.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/roles/calibre/defaults/main.yml b/roles/calibre/defaults/main.yml index 73ed87fea..b794b0f4b 100644 --- a/roles/calibre/defaults/main.yml +++ b/roles/calibre/defaults/main.yml @@ -9,6 +9,9 @@ calibre_dbpath: "{{ content_base }}/calibre" calibre_userdb: "{{ calibre_dbpath }}/users.sqlite" # i.e. /library/calibre/users.sqlite +# For teachers to add/remove/convert books & edit metadata: Admin/changeme +# Stub acnts to browse books: box/box, h/h, ht/ht, m/m, mx/mx, p/p, pe/pe +# Edit with: calibre-server --manage-users --userdb /library/calibre/users.sqlite calibre_sample_book: "Metamorphosis-jackson.epub" # Must be downloadable from http://download.iiab.io/packages From 43455772a0eb32605bd1cf913a529c70cd77cdfd Mon Sep 17 00:00:00 2001 From: A Holt Date: Sat, 7 Jul 2018 16:17:53 -0400 Subject: [PATCH 8/9] Update main.yml --- roles/calibre/defaults/main.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/roles/calibre/defaults/main.yml b/roles/calibre/defaults/main.yml index b794b0f4b..4cbfc1caa 100644 --- a/roles/calibre/defaults/main.yml +++ b/roles/calibre/defaults/main.yml @@ -8,10 +8,11 @@ calibre_dbpath: "{{ content_base }}/calibre" # i.e. /library/calibre (holds metadata.db + book directories + our users.sqlite) calibre_userdb: "{{ calibre_dbpath }}/users.sqlite" -# i.e. /library/calibre/users.sqlite -# For teachers to add/remove/convert books & edit metadata: Admin/changeme -# Stub acnts to browse books: box/box, h/h, ht/ht, m/m, mx/mx, p/p, pe/pe -# Edit with: calibre-server --manage-users --userdb /library/calibre/users.sqlite +# i.e. /library/calibre/users.sqlite since github.com/iiab/iiab/issues/830 +# Teachers add/remove/convert books & edit metadata using: Admin/changeme +# Stub/Student acnts to browse: box/box, h/h, ht/ht, m/m, mx/mx, p/p, pe/pe +# Edit accounts/permissions using: +# calibre-server --manage-users --userdb /library/calibre/users.sqlite calibre_sample_book: "Metamorphosis-jackson.epub" # Must be downloadable from http://download.iiab.io/packages From dec77aab2e5f73f26dc41c3098db106b681ef95e Mon Sep 17 00:00:00 2001 From: A Holt Date: Sat, 7 Jul 2018 16:20:28 -0400 Subject: [PATCH 9/9] Update main.yml --- roles/calibre/tasks/main.yml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/roles/calibre/tasks/main.yml b/roles/calibre/tasks/main.yml index 9a7db6efa..7e1c20156 100644 --- a/roles/calibre/tasks/main.yml +++ b/roles/calibre/tasks/main.yml @@ -32,7 +32,16 @@ # - run testing branch for Ubuntu 16.04: scripts/calibre-install-latest.sh # - run unstable branch for Debian etc: scripts/calibre-install-unstable.sh -- name: Create calibre-serve.service and calibre.conf +- name: Copy template userdb to /library/calibre/users.sqlite (IF /usr/bin/calibre WAS MISSING) + copy: + src: /opt/iiab/iiab/roles/calibre/templates/users.sqlite + dest: "{{ calibre_userdb }}" + owner: root + group: root + mode: 0644 + when: (not calib_executable.stat.exists) + +- name: Create calibre-serve.service and calibre.conf (IF /usr/bin/calibre WAS MISSING) template: src: "{{ item.src }}" dest: "{{ item.dest }}" @@ -46,16 +55,7 @@ - { src: 'calibre.conf', dest: '/etc/{{ apache_config_dir }}', mode: '0644'} when: (not calib_executable.stat.exists) -- name: Copy template userdb to /library/calibre/users.sqlite - copy: - src: /opt/iiab/iiab/roles/calibre/templates/users.sqlite - dest: "{{ calibre_userdb }}" - owner: root - group: root - mode: 0644 - when: (not calib_executable.stat.exists) - -- name: Force systemd to reread configs +- name: Force systemd to reread configs (IF /usr/bin/calibre WAS MISSING) systemd: daemon_reload: yes when: (not calib_executable.stat.exists)