1 # Copyright (C) The Arvados Authors. All rights reserved.
3 # SPDX-License-Identifier: Apache-2.0
5 - name: Install Singularity dependencies
14 - name: Create Singularity build directory
16 ansible.builtin.tempfile:
19 prefix: singularity-build-
20 register: singularity_build
22 - name: Clone Singularity
25 repo: "{{ compute_singularity_url }}"
26 dest: "{{ singularity_build.path }}"
27 version: "v{{ compute_singularity_version }}"
29 - name: Create Singularity VERSION file
33 {{ compute_singularity_version }}
34 dest: "{{ singularity_build.path }}/VERSION"
38 ansible.builtin.unarchive:
39 src: "https://storage.googleapis.com/golang/go{{ compute_go_version }}.linux-amd64.tar.gz"
40 dest: "{{ singularity_build.path }}"
43 - name: Build Singularity
45 ansible.builtin.command:
47 chdir: "{{ singularity_build.path }}"
49 PATH: "{{ singularity_build.path }}/go/bin:{{ ansible_env.PATH }}"
51 - ./mconfig --prefix=/opt/singularity
52 - env -C builddir make
54 - name: Install Singularity
55 ansible.builtin.command:
57 chdir: "{{ singularity_build.path }}/builddir"
59 - name: Clean Singularity build directory
61 path: "{{ singularity_build.path }}"
64 - name: Add Singularity commands to PATH
67 src: "/opt/singularity/bin/{{ item }}"
68 dest: "/usr/local/bin/{{ item }}"
73 - name: Configure Singularity mksquashfs mem
74 ansible.builtin.lineinfile:
76 path: /opt/singularity/etc/singularity/singularity.conf
77 regexp: "^ *mksquashfs +mem *="
78 line: "mksquashfs mem = {{ compute_mksquashfs_mem }}"
79 when: compute_mksquashfs_mem is defined