Skip to content
Snippets Groups Projects
Select Git revision
  • 0f4300bc75999319df285dd377d4c0e3008553e7
  • master default protected
  • diag
  • version1.3-archivematica
  • version1.2-archivematica
  • version1.1-archivematica
  • version1.0-archivematica
  • version1.0-rosetta
8 results

count.pm

Blame
  • install_test_scripts.yml 2.71 KiB
    ---
    ### INSTALL TEST SCRIPTS ###
    
    - name: install prerequisites
      apt:
        update_cache: true
        name: [
          'libdata-printer-perl',
          'libdatetime-format-http-perl',
          'libio-pty-perl',
        ]
        state: latest
    - name: install prerequisites for deep_fixity
      apt:
        update_cache: true
        name: [
          'libbloom-filter-perl',
          'libcryptx-perl',
          'libdigest-crc-perl',
          'libgetopt-long-complete-perl',
        ]
        state: latest
    
    - name: deploy wrapper script for exit strategy
      template:
        src: "{{ item }}.j2"
        dest: "/usr/local/bin/{{ item }}"
        owner: "root"
        group: "lza"
        mode: "0755"
      loop:
        - "test_exit_strategy.sh"
    
    - name: deploy test scripts from Git
      ansible.builtin.git:
        dest: "/usr/local/bin/{{ item.dest }}"
        repo: "{{ item.repo }}"
        version: "{{ item.version | default(omit) }}"
        force: "{{ item.force | default(true) }}"
        accept_hostkey: "{{ item.accept_hostkey | default(true) }}"
        single_branch: "{{ item.single_branch | default(true) }}"
        recursive: "{{ item.recursive | default(false) }}"
        key_file: "~/.ssh/id_ed25519_deploykey"
      loop:
        # runs all the pre-/post-upgrade tests on Rosetta and SubApp servers
        - dest: "rosetta_update_test/"
          repo: "git@{{ vault_slub_git_repo_fqdn }}:slub-digitalpreservation/rosetta_update_test.git"
        # runs the Exit Strategy script to build an emergency database
        - dest: "rosettaExitStrategy/"
          repo: "git@{{ vault_slub_git_repo_fqdn }}:slub-digitalpreservation/rosettaExitStrategy.git"
        - dest: "rosettaDeepFixity/"
          repo: "git@{{ vault_slub_git_repo_fqdn }}:digital-preservation/rosettadeepfixity.git"
    
    - name: Perl syntax check for exit strategy script
      command: "perl -c /usr/local/bin/rosettaExitStrategy/perl/exit_strategy.pl"
      register: depcheck_exit
      failed_when: "'syntax OK' not in depcheck_exit.stderr"
      changed_when: false
    - name: test if prerequisites for exit strategy script are installed
      ansible.builtin.assert:
        that:
          - "'syntax OK' in depcheck_exit.stderr"
          - "depcheck_exit.rc == 0"
        fail_msg: "{{ depcheck_exit.stderr }}"
        success_msg: "exit strategy script has all required prerequisites installed"
    
    - name: Perl syntax check for deep_fixity script
      command: "perl -c /usr/local/bin/rosettaDeepFixity/deep_fixitycheck.pl"
      register: depcheck_deep_fixity
      failed_when: "'syntax OK' not in depcheck_deep_fixity.stderr"