dotfiles-ansible/roles/containers/tasks/apptainer.yml

26 lines
840 B
YAML

---
# NOTE: remember to kill previous bazel servers before entering a new Apptainer container environment
- name: apptainer | Create Bazel environment
tags: bazel-apptainer
block:
- name: apptainer | Pull and build bazel.sif file
command:
cmd: /usr/bin/apptainer pull ~/.local/libexec/bazel.sif docker://gcr.io/bazel-public/bazel:latest
creates: ~/.local/libexec/bazel.sif
removes: /usr/bin/apptainer
- name: apptainer | Create bazel-apptainer launch script
copy:
content: |
#!/bin/sh
TERM=xterm-256color exec apptainer shell \
--cleanenv \
--ipc \
--pid \
--uts \
--userns \
--unsquash \
~/.local/libexec/bazel.sif
dest: ~/.local/bin/bazel-apptainer
mode: '755'