- /group_vars/all.yml - /inventories/hosts - /roles/calibre-web/tasks/main.yml - /roles/calibre-web/templates/docker-compose.yml.j2 - /olimp-deploy.yml
53 lines
1.2 KiB
YAML
53 lines
1.2 KiB
YAML
---
|
|
- name: Create Calibre directories
|
|
file:
|
|
path: "{{ item }}"
|
|
state: directory
|
|
mode: 0755
|
|
loop:
|
|
- "{{ calibre_base_dir }}"
|
|
- "{{ calibre_config_dir }}"
|
|
|
|
- name: Ensure books directory has correct permissions
|
|
file:
|
|
path: "{{ calibre_library_dir }}"
|
|
state: directory
|
|
mode: 0755
|
|
owner: "1000"
|
|
group: "1000"
|
|
|
|
- name: Deploy Calibre-web docker-compose.yml
|
|
template:
|
|
src: docker-compose.yml.j2
|
|
dest: "{{ calibre_base_dir }}/docker-compose.yml"
|
|
mode: 0644
|
|
|
|
- name: Start Calibre-web services
|
|
shell: |
|
|
cd {{ calibre_base_dir }}
|
|
docker compose up -d
|
|
args:
|
|
executable: /bin/bash
|
|
|
|
- name: Wait for Calibre-web to start
|
|
pause:
|
|
seconds: 20
|
|
|
|
- name: Check Calibre-web container status
|
|
shell: docker ps --filter name=calibre-web
|
|
register: calibre_web_status
|
|
changed_when: false
|
|
|
|
- name: Show Calibre-web status
|
|
debug:
|
|
var: calibre_web_status.stdout
|
|
|
|
- name: Verify Calibre-web is accessible
|
|
uri:
|
|
url: "http://{{ ansible_host }}:{{ calibre_web_port }}"
|
|
status_code: 200
|
|
timeout: 30
|
|
register: calibre_web_accessible
|
|
until: calibre_web_accessible.status == 200
|
|
retries: 5
|
|
delay: 10 |