Skip to content

Latest commit

 

History

History
125 lines (97 loc) · 5.17 KB

File metadata and controls

125 lines (97 loc) · 5.17 KB

Ansible Role: edu-sharing-custom-amp

The edu-sharing-custom-amp role is used activate/deactivate alfresco amps

Implementation

The edu-sharing-custom-amp role is included in the playbook system.yml.

- hosts: edusharing
  roles:
  - role: edu-sharing-custom-amp
    tags: 
      - edu-sharing-custom-amp

or we just want to run only the edu-sharing-custom-amp then we run:

ansible-playbook -v -i <host> ansible/system.yml --tags "edu-sharing-custom-amp"

This will skip other roles and run only the edu-sharing-custom-amp role

Role Variables

The edu-sharing-custom-amp role allows you to customize certain variables according to your requirements.

Here are the default variables:

# antivirus alfviral see: https://github.com/TIBHannover/alfviral
antivirus_alfviral_force_local: true
# antivirus_alfviral_version: 1.4.0
antivirus_alfviral_version: 1.5.0-SNAPSHOT
antivirus_alfviral_amp_filename: 'alfviral-platform-{{ antivirus_alfviral_version }}.amp'

antivirus_alfviral_url: "https://github.com/TIBHannover/alfviral/releases/download/{{antivirus_alfviral_version}}/alfviral-platform-{{antivirus_alfviral_version}}.amp"

alfviral_antivirus_configuration:
  - key: alfviral.mode
    value: "INSTREAM"
  - key: alfviral.instream.timeout
    value: "{{antivirus_alfviral_timeout | default(10000,true)}}"
  - key: alfviral.instream.host
    value: "{{clamav_proxy}}"
  - key: alfviral.instream.port
    value: "{{antivirus_alfviral_port | default(3310,true)}}"
  - key: alfviral.on_update.delete
    value: "{{ antivirus_alfviral_on_update_delete | default('true',true) }}"
  - key: alfviral.notify.user
    value: "{{ antivirus_alfviral_notify_user | default('true',true)}}"
  - key: alfviral.notify.admin
    value: "{{ antivirus_alfviral_notify_admin | default('true',true)}}"
  - key: alfviral.notify.asynchronously
    value: "{{ antivirus_alfviral_notify_asynchronously | default('false',true) }}"
  - key: alfviral.notify.user.template
    value: "{{ antivirus_alfviral_user_template | default('notify_user_en.html.ftl',true) }}"
  - key: alfviral.notify.admin.template
    value: "{{ antivirus_alfviral_admin_template | default('notify_admin_en.html.ftl',true) }}"
  - key: alfviral.file.exceptions
    value: ""


mail_configuration:
  - key: mail.host
    value: "{{ edu_mail_smtp_server | default('') }}"
  - key: mail.port
    value: '{{ edu_mail_smtp_port | default("25") }}'
  - key: mail.username
    value: '{{ edu_mail_smtp_username | default("") }}'
  - key: mail.password
    value: '{{ edu_mail_smtp_passwd | default("") }}'
  - key: mail.encoding
    value: '{{ edu_mail_smtp_encoding | default("UTF-8",true) }}'
  - key: mail.from.default
    value: '{{ edu_mail_smtp_from | default("[email protected]") }}'
  - key: mail.smtp.auth
    value: '{{ edu_mail_smtp_auth | default("false") }}'

# Edu-sharing-plugin-oersi-update see: gitlab.com/TIBHannover/oer/edu-sharing-plugin-oersi-update

# version of the amp file
es_update_oersi_force_local: true
es_update_oersi_version: 1.0.3
es_update_oersi_amp_filename: "es-update-oersi-{{es_update_oersi_version}}.amp"
es_update_oersi_dowload_url:
# oersi update endpoint 
# es_update_oersi_url: 'https://oersi.org/resources/api-internal/import-scripts/python/update-record'
es_update_oersi_url: 'https://oersi.requestcatcher.com/'


es_update_oersi_configuration:
  - key: oersi.url
    value: "{{es_update_oersi_url | default('',true)}}"
  - key: edu_sharing.baseUrl
    value: "{{edu_sharing_url | default('',true)}}"
  - key: bulk.thread.pool.size
    value: "{{thread_pool_size | default(200,true)}}"

Tasks

The tasks/ directory contains all the ansible tasks.

  1. main: The main task or entry task for ansible.
  2. cleanup.yml: use to cleanup all the *.amp|*.jar files.
  3. download-and-install-alfviral-amp.yml: download and install alfviral antivirus amp file.
  4. download-and-install-esupdate-oersi-amp.yml: download and install es-update-oersi amp file.
  5. wait_for_paths.yml : use to check if the paths in docker volumes are generated by docker, and wait until they are generated.
  6. configure_alfresco_properties: This task is used to override the alfresco-global.properties.
    • remove_alviral_and_mail_from_alfresco_properties: Used to remove the configuration for alfviral and mail.
    • add_alviral_to_alfresco_properties: Add the alfviral configuration.
    • add_mail_config_to_alfresco_properties: Configure the mail smtp for alfviral.
    • add_es_update_oersi_to_alfresco_properties: Add es-update-oersi configuration.

files

This directory houses AMP (Alfresco Module Package) files, essential for installation within the Alfresco software. Currently, we don't offer an automated download and extraction process for Alfresco. Hence, it's necessary to manually download the files from their respective repositories and extract them into the file/ directory.

  1. Alfviral This antivirus plugin is utilized as an Alfresco plugin.
  2. Edu-sharing-plugin-oersi-update Another Alfresco plugin used for sending notifications to oersi.org when public materials are changed or deleted.