1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-02-13 03:32:12 +00:00

split off debs and installing

This commit is contained in:
Jerry Vonau 2017-11-19 14:33:53 -06:00
parent ac7f3ca6a6
commit eec76edd5f
4 changed files with 67 additions and 93 deletions

View file

@ -0,0 +1,8 @@
- name: Install Calibre (OS's other than CentOS)
package: name={{ item }}
state=present
with_items:
- calibre
- name: Upgrade Calibre to 3.12
command: scripts/calibre312.sh

View file

@ -1,90 +1,3 @@
- name: Download latest linux-installer.py from GitHub to calibre-installer.py
# seems to work with just about any Linux, and deals with dependencies
get_url:
url: "{{ calibre_src_url }}"
dest: "{{ downloads_dir }}/calibre-installer.py"
mode: 0755
force: yes
backup: yes
register: calibre_download_output
when: internet_available and is_redhat
# ALWAYS DEFINED, DESPITE get_url DOCUMENTATION CLAIM...
# - debug:
# msg: "{{ calibre_download_output.src }}"
#
# DEFINED ONLY WHEN /opt/iiab/downloads/calibre-installer.py CHANGES
# - debug:
# msg: "{{ calibre_download_output.backup_file }}"
# OOPS BAD IDEA: changes in https://github.com/kovidgoyal/calibre/commits/master/setup/linux-installer.py are not sync'd with Calibre releases!
# - name: FORCE AN UPGRADE IF calibre-installer.py HAS CHANGED, IF SO ORIGINAL IS SAVED TO {{ calibre_download_output.backup_file }}
# file:
# path: /usr/bin/calibre-uninstall
# state: absent
# when: calibre_download_output.backup_file is defined
- name: Check if calibre-installer.py exists in /opt/iiab/downloads
stat:
path: "{{ downloads_dir }}/calibre-installer.py"
register: calib_inst
when: is_redhat
- name: Check if calibre-uninstall exists in /usr/bin
stat:
path: "/usr/bin/calibre-uninstall"
register: calib_uninst
when: is_redhat
#- name: FAIL (force Ansible to exit) IF /opt/iiab/downloads/calibre-installer.py doesn't exist OR needed Internet connection is missing
# meta: end_play
# fail:
# msg: "{{ downloads_dir }}/calibre-installer.py and an Internet connection are REQUIRED in order to install Calibre!"
# when: (not calib_inst.stat.exists) or (not internet_available and not calib_uninst.stat.exists)
# INSTALL THE LATEST CALIBRE (calibre-server etc) ON ALL OS'S - RUNS IF /usr/bin/calibre-uninstall DOES NOT ALEADY EXIST
- name: Run calibre-installer.py to install Calibre programs into /usr/bin - MANUALLY REMOVE /usr/bin/calibre-uninstall TO FORCE calibre-installer.py TO REINSTALL/UPGRADE HERE!
shell: "{{ downloads_dir }}/calibre-installer.py >> /dev/null"
args:
creates: /usr/bin/calibre-uninstall
when: internet_available and is_redhat
- name: Install Calibre (OS's other than CentOS)
package: name={{ item }}
state=present
with_items:
- calibre
when: calibre_install and ansible_distribution != 'CentOS'
- name: Create calibre-serve.service and calibre.conf
template:
backup: no
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: root
group: root
mode: "{{ item.mode }}"
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'}
# http://box:8080 & http://box:8080/mobile WORK BUT OTHER URL'S LIKE http://box/books ARE A MESS (BOOKS RARELY DISPLAY)
- name: Create calibre.conf link for UNTESTED http://box/books etc (debuntu)
file:
src: /etc/apache2/sites-available/calibre.conf
dest: /etc/apache2/sites-enabled/calibre.conf
state: link
when: is_debuntu
# CREATE CALIBRE DATABASE WITH A SAMPLE BOOK
- name: Disable Calibre service -- stops calibre-server by Kovid Goyal
service:
name: calibre-serve
enabled: no
state: stopped
- name: Create /library/calibre (mandatory since Calibre 3.x)
file:
path: "{{ calibre_dbpath }}"
@ -107,11 +20,6 @@
path: "{{ content_base }}/downloads/{{ calibre_sample_book }}"
register: sample_bk
- name: Check if /library/calibre/metadata.db exists
stat:
path: "{{ calibre_dbpath }}/metadata.db"
register: calibre_db
- name: Incorporate sample book into Calibre DB (mandatory since Calibre 3.x)
shell: "calibredb add {{ content_base }}/downloads/{{ calibre_sample_book }} --with-library {{ calibre_dbpath }}"
when: sample_bk.stat.exists and not calibre_db.stat.exists

View file

@ -0,0 +1,50 @@
- name: Download latest linux-installer.py from GitHub to calibre-installer.py
# seems to work with just about any Linux, and deals with dependencies
# but is arch dependent
get_url:
url: "{{ calibre_src_url }}"
dest: "{{ downloads_dir }}/calibre-installer.py"
mode: 0755
force: yes
backup: yes
register: calibre_download_output
when: internet_available
# ALWAYS DEFINED, DESPITE get_url DOCUMENTATION CLAIM...
# - debug:
# msg: "{{ calibre_download_output.src }}"
#
# DEFINED ONLY WHEN /opt/iiab/downloads/calibre-installer.py CHANGES
# - debug:
# msg: "{{ calibre_download_output.backup_file }}"
# OOPS BAD IDEA: changes in https://github.com/kovidgoyal/calibre/commits/master/setup/linux-installer.py are not sync'd with Calibre releases!
# - name: FORCE AN UPGRADE IF calibre-installer.py HAS CHANGED, IF SO ORIGINAL IS SAVED TO {{ calibre_download_output.backup_file }}
# file:
# path: /usr/bin/calibre-uninstall
# state: absent
# when: calibre_download_output.backup_file is defined
- name: Check if calibre-installer.py exists in /opt/iiab/downloads
stat:
path: "{{ downloads_dir }}/calibre-installer.py"
register: calib_inst
- name: Check if calibre-uninstall exists in /usr/bin
stat:
path: "/usr/bin/calibre-uninstall"
register: calib_uninst
- name: FAIL (force Ansible to exit) IF /opt/iiab/downloads/calibre-installer.py doesn't exist OR needed Internet connection is missing
meta: end_play
fail:
msg: "{{ downloads_dir }}/calibre-installer.py and an Internet connection are REQUIRED in order to install Calibre!"
when: (not calib_inst.stat.exists) or (not internet_available and not calib_uninst.stat.exists)
# INSTALL THE LATEST CALIBRE (calibre-server etc) ON ALL OS'S - RUNS IF /usr/bin/calibre-uninstall DOES NOT ALEADY EXIST
- name: Run calibre-installer.py to install Calibre programs into /usr/bin - MANUALLY REMOVE /usr/bin/calibre-uninstall TO FORCE calibre-installer.py TO REINSTALL/UPGRADE HERE!
shell: "{{ downloads_dir }}/calibre-installer.py >> /dev/null"
args:
creates: /usr/bin/calibre-uninstall
when: internet_available

View file

@ -3,7 +3,15 @@
path: "{{ calibre_dbpath }}/metadata.db"
register: calibre_db
- name: Install Calibre
- name: Installing Calibre via calibre-installer.py
include_tasks: installing.yml
when: not calibre_db.stat.exists and (is_redhat or is_ubuntu)
- name: Install Calibre via .debs
include_tasks: debs.yml
when: not calibre_db.stat.exists and is_debian
- name: Install Calibre - All
include_tasks: install.yml
when: not calibre_db.stat.exists