-
Notifications
You must be signed in to change notification settings - Fork 0
/
research-cloud-plugin.yml
110 lines (93 loc) · 2.54 KB
/
research-cloud-plugin.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# code: language=ansible
- name: Install and configure eWaterCycle Jupyter
hosts:
- all
- localhost
gather_facts: false
vars:
# dCache token for mounting shared data
dcache_ro_token: null # Must be filled from command line
tasks:
- name: Wait for system to become reachable
wait_for_connection:
timeout: 300
- name: Gather facts for first time
setup:
- name: Extra vols
debug:
var: external_volumes
- name: Common stuff
include_role:
name: common
- name: Install gcc, git, ntp
apt:
update_cache: true
pkg:
- git
- gcc
- g++
- make
- ntp
- tmux
- ksh
- acl
- net-tools
- jq
- name: Storage items
include_role:
name: storage
# roles have hardcoded /mnt/apps, so create it before running roles
- name: Apps root
file:
path: /mnt/apps
state: directory
mode: '0755'
# Container engines
- name: Apptainer
include_role:
name: apptainer
# Install Conda + mamba
- name: Install conda
include_role:
name: conda
# TODO mount a home and scratch disk, see https://github.com/eWaterCycle/infra/issues/89
# - name: Scratch disk
# mount:
# path: /scratch
# src: # TODO find correct value, possibly extracted from SRC API or ansible vars/facts
# state: present
# - name: Home disk
# mount:
# path: /home
# src: # TODO find correct value, possibly extracted from SRC API or ansible vars/facts
# state: present
- name: Mount shared data dcache with rclone
include_role:
name: rclone
tasks_from: mount
# https://lab.ewatercycle.org/ functionality
- name: Welcome page
include_role:
name: labstart
# TODO remove roles instead of commenting them out or make them optional
# # https://explore.ewatercycle.org/ functionality
# - name: Experiment launcher
# include_role:
# name: launcher
# - name: Explorer
# include_role:
# name: terria
# https://jupyter.ewatercycle.org/ functionality
- name: Create eWaterCycle conda env
include_role:
name: ewatercycle
- name: Set up Jupyter lab/hub
include_role:
name: jupyter
- name: Clean apt cache
apt:
autoclean: true
autoremove: true
- name: Debug
debug:
msg: The eWaterCycle Jupyter plugin has completed