1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-02-13 19:52:06 +00:00
iiab/roles/internetarchive/tasks/install.yml

80 lines
2.6 KiB
YAML
Raw Normal View History

2020-01-30 09:00:00 +00:00
# INSTALL 3 PREREQS
- name: "Set 'nodejs_install: True' and 'nodejs_enabled: True'"
set_fact:
nodejs_install: True
nodejs_enabled: True
2020-02-04 23:19:44 +00:00
- name: NODEJS - run 'nodejs' role (attempt to install & enable Node.js)
2019-10-15 09:51:59 +00:00
include_role:
name: nodejs
2020-02-04 23:19:44 +00:00
- name: FAIL (STOP INSTALLING) IF nodejs_version is not set to 10.x or 12.x
fail:
msg: "Internet Archive install cannot proceed, as it currently requires Node.js 10.x or 12.x, and your nodejs_version is set to {{ nodejs_version }}. Please check the value of nodejs_version in /opt/iiab/iiab/vars/default_vars.yml and possibly also /etc/iiab/local_vars.yml"
when: (nodejs_version != "10.x") and (nodejs_version != "12.x")
2020-01-30 09:00:00 +00:00
- name: "Set 'yarn_install: True' and 'yarn_enabled: True'"
set_fact:
yarn_install: True
yarn_enabled: True
2020-02-04 23:19:44 +00:00
- name: YARN - run 'yarn' role (attempt to install & enable Yarn package manager)
2019-10-15 09:51:59 +00:00
include_role:
name: yarn
2020-01-30 09:00:00 +00:00
- name: Install package 'libsecret-1-dev'
2019-10-15 09:51:59 +00:00
package:
2020-01-30 09:00:00 +00:00
name: libsecret-1-dev
2019-10-15 09:51:59 +00:00
state: present
2020-02-04 23:19:44 +00:00
2020-01-30 09:00:00 +00:00
# CREATE 2 DIRS & RUN YARN
- name: mkdir {{ internetarchive_dir }}
2019-10-15 09:51:59 +00:00
file:
state: directory
2020-02-04 23:19:44 +00:00
path: "{{ internetarchive_dir }}" # /opt/iiab/internetarchive
# owner: root
2019-10-15 09:51:59 +00:00
2020-02-04 23:19:44 +00:00
- name: Run yarn install to populate {{ internetarchive_dir }}/node_modules (CAN TAKE ~15 MINUTES)
2019-10-15 09:51:59 +00:00
shell: yarn config set child-concurrency 1 && yarn add @internetarchive/dweb-mirror
args:
chdir: "{{ internetarchive_dir }}"
creates: "{{ internetarchive_dir }}/node_modules/@internetarchive/dweb-mirror/internetarchive"
when: internet_available | bool
2020-02-04 23:19:44 +00:00
# register: internetarchive_installing
2019-10-15 09:51:59 +00:00
2020-02-04 23:19:44 +00:00
- name: mkdir {{ content_base }}/archiveorg
2019-10-15 09:51:59 +00:00
file:
state: directory
2020-02-04 23:19:44 +00:00
path: "{{ content_base }}/archiveorg" # /library
# owner: root
2019-10-15 09:51:59 +00:00
# CONFIG FILES
2020-02-04 23:19:44 +00:00
- name: "Install from templates: /etc/systemd/system/internetarchive.service, /etc/{{ apache_conf_dir }}/internetarchive.conf"
2019-10-15 09:51:59 +00:00
template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
2020-02-04 23:19:44 +00:00
# owner: root
# group: root
# mode: '0644'
2019-10-15 09:51:59 +00:00
with_items:
- { src: 'internetarchive.service.j2', dest: '/etc/systemd/system/internetarchive.service' }
2020-02-04 23:19:44 +00:00
- { src: 'internetarchive.conf', dest: '/etc/{{ apache_conf_dir }}/internetarchive.conf' } # apache2/sites-available
2019-10-15 09:51:59 +00:00
2020-01-30 09:00:00 +00:00
# RECORD Internet Archive AS INSTALLED
- name: "Set 'internetarchive_installed: True'"
set_fact:
internetarchive_installed: True
- name: "Add 'internetarchive_installed: True' to {{ iiab_state_file }}"
2019-10-15 09:51:59 +00:00
lineinfile:
path: "{{ iiab_state_file }}" # /etc/iiab/iiab_state.yml
2019-10-15 09:51:59 +00:00
regexp: '^internetarchive_installed'
line: 'internetarchive_installed: True'