Skip to content
Snippets Groups Projects
Commit 2a0c3c9c authored by Jörg Sachse's avatar Jörg Sachse
Browse files

feat: install ta-tools using Dist::Zilla

parent e688768e
No related branches found
No related tags found
1 merge request!2merge feat_ND-2363_ND-2323 into master
---
- name: install Git (prerequisite for ansible.builtin.git)
ansible.builtin.apt:
name: "git"
name: [
"git",
"libdist-zilla-perl",
]
state: latest
- name: checkout ta-tools repo
ansible.builtin.git:
repo: "https://git.slub-dresden.de/digital-preservation/tools-for-technical-analysts.git"
dest: "/tmp/tools-for-technical-analysts/"
register: ta_tools_git
# https://docs.ansible.com/ansible/latest/collections/ansible/builtin/copy_module.html
# 'If path is a directory, it is copied recursively. In this case, if path ends
# with "/", only inside contents of that directory are copied to destination.'
# Run `dzil listdeps` to get an updated list of dependencies.
# Commented dependencies are not available as Debian packages and will be
# installed when running `dzil install` in the next task.
- name: install dependencies for ta-tools
ansible.builtin.apt:
name: [
# App::Cmd::Setup
"libdata-printer-perl",
"libdatetime-perl",
"libdatetime-format-dateparse-perl",
# ExtUtils::MakeMaker
# IO::Zlib
# LWP::UserAgent
"libpath-tiny-perl",
"libregexp-optimizer-perl",
"libsoap-lite-perl",
"libtext-csv-perl",
"libyaml-perl",
]
# This is THE main purpose of this task file, so we won't run this as a handler
# but set "noqa: no-handler" instead.
- name: install ta-tools
ansible.builtin.copy:
src: "/tmp/tools-for-technical-analysts/{{ item.src }}"
dest: "{{ item.dest }}"
mode: "{{ item.mode | default('0755') }}"
directory_mode: "0755" # set this, or dirs below the dest directories may become untraversable!
remote_src: true
loop:
- src: "bin/"
dest: "/usr/local/bin/"
- src: "lib/"
dest: "/usr/local/perl/"
ansible.builtin.command:
cmd: "dzil install"
chdir: "/tmp/tools-for-technical-analysts/"
when: ta_tools_git.changed # noqa: no-handler
- name: set execution bit for ta-tools script
- name: create directories needed by ta-tool
ansible.builtin.file:
path: "/usr/local/bin/ta-tool.pl"
path: "/home/{{ vault_subapp_user }}/{{ item }}/"
state: directory
mode: "0755"
owner: "{{ vault_subapp_user }}"
group: "{{ vault_subapp_group }}"
loop:
- ".cache"
- ".config"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment