Skip to content

Commit 460a1d4

Browse files
authored
Merge pull request #186 from martenson/readme-and-cleanup
update readme and cleanup duplicated vars
2 parents 819f320 + 2ebe25e commit 460a1d4

File tree

7 files changed

+28
-98
lines changed

7 files changed

+28
-98
lines changed

README.md

Lines changed: 18 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ This playbook installs and configures Galaxy server on Metacentrum CZ infrastruc
1717
```
1818

1919
- Metacentrum service account (in the following examples `galaxy-qa1` is used)
20-
- OIDC secrets set up for federated login
20+
- OIDC client id and secret set up for federated login with proper scopes
2121

2222
## auth with the playbook
2323

24-
Use your existing ssh key or generate new with `$ ssh-keygen -t ed25519`
24+
Use your existing ssh key or generate a new one with `$ ssh-keygen -t ed25519`
2525

2626
- If you want to run the playbook through github action you need to add your key to your github profile.
2727
- For executing this from a local machine you can forward your sshkey to the host.
@@ -30,7 +30,7 @@ Use your existing ssh key or generate new with `$ ssh-keygen -t ed25519`
3030

3131
For the purposes below the `<YOUR_HOST>` can be e.g. `galaxy-qa2.galaxy.cloud.e-infra.cz`
3232

33-
Add an entry to the `hosts.yml` file which will look like this:
33+
Add an entry to the `hosts.yml` file which could look like this:
3434

3535
```
3636
galaxyservers:
@@ -41,25 +41,10 @@ galaxyservers:
4141

4242
## create vars file for your host
4343

44-
Create `host_vars/<YOUR_HOST>/vars.yml`. It should contain the following vars:
44+
Create `host_vars/<YOUR_HOST>/vars.yml`.
45+
Check out the `vars.yml` files of other hosts in this repo to get an idea of what are the options.
4546

46-
```
47-
galaxy_mutable_data_dir: /data/galaxy
48-
49-
pulsar:
50-
user_name: galaxy-qa1
51-
nfs_home: brno11-elixir
52-
nfs_prefix: pulsar-qa2
53-
pbs_queue: galaxyqa
54-
pbs_gpu_queue: galaxy_gpu
55-
56-
pulsar_data_dir: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}/{{ pulsar.nfs_prefix }}"
57-
58-
# displayed in Galaxy's masthead
59-
csnt_brand: <YOUR_HOST>
60-
```
61-
62-
note: the same service user (`galaxy-qa1`) is used for both `pulsar-qa1` and `pulsar-qa2`
47+
note: The same service user (`galaxy-qa1`) is used for both `pulsar-qa1` and `pulsar-qa2` instances.
6348

6449
## create and fill ansible vault
6550

@@ -77,47 +62,30 @@ rabbitmq_users_password:
7762
vault_rabbitmq_password_galaxy: good-password-here
7863
oidc_client_id: string-with-client-id
7964
oidc_client_secret: string-with-client-secret
80-
8165
# Galaxy admin API key for tool installation
8266
api_key: dont-be-lazy-a-really-long-password-here
83-
8467
# see https://github.com/galaxyproject/galaxy/blob/dev/doc/source/admin/special_topics/vault.md
8568
vault_encryption_keys:
8669
- generated_key_NUDIABSUmny78sad8a7sby87av8dv=
87-
8870
pulsar_ssh_key: |
8971
-----BEGIN OPENSSH PRIVATE KEY-----
9072
asdasdasdad
9173
-----END OPENSSH PRIVATE KEY-----
92-
93-
tiaas_password: a-really-long-password-here
94-
vault_rabbitmq_password_flower: a-really-long-password-here
95-
vault_flower_user_password: a-really-long-password-here
96-
vault_sentry_password: a-really-long-password-here
97-
vault_reports_admin_password: a-really-long-password-here
9874
```
99-
note: you should avoid having a `/` or `\` in your password as galaxy will interpret this as a path.
10075
10176
## running playbook
10277
`$ ansible-playbook --limit <YOUR_HOST> galaxy.yml`
10378

79+
## creating service users
80+
81+
At the moment our playbooks assume there is an admin's API key, so after a first run the vault needs to be updated with such a key.
82+
83+
You also need to create a non-admin service user called `[email protected]` for running tool tests and other non-admin automated tasks.
84+
10485
## tools
10586

106-
Install ephemeris for tool management:
107-
```
108-
virtualenv -p python3 ~/ephemeris_venv
109-
. ~/ephemeris_venv/bin/activate
110-
pip install ephemeris
111-
```
112-
To obtain the list of tools from the [usegalaxy.eu](https://usegalaxy.eu) use:
113-
```
114-
get-tool-list -g "https://usegalaxy.eu" -o "eu_tool_list.yaml"
115-
```
116-
and then to install them:
117-
```
118-
shed-tools install -g https://your-galaxy -a <api-key> -t eu_tool_list.yaml
119-
```
120-
The api key can be found in the User -> Preferences -> Manage API Key in Galaxy menu.
87+
Instances' tools are managed by a combination of a cron script that installs them (deployed from this playbook) -- check out `[`the script`](templates/galaxy/cron/install_tools.sh.j2)
88+
and external repository that contains the lists of tools for every instance: https://github.com/CESNET/galaxy_tools.
12189

12290
## deployment troubleshooting
12391

@@ -144,3 +112,7 @@ Use `sudo apt install python3-docker` before running the `usegalaxy.rabbitmqserv
144112
### influxdb
145113

146114
For influxdb apt key error: https://www.influxdata.com/blog/linux-package-signing-key-rotation/
115+
116+
### flower
117+
118+
Flower role 2.0 tries to install python `virtualenv` globally, which debian12 does not allow. You have to modify the role to prevent this.

group_vars/galaxyservers.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ csnt_galaxy_tmpclean_dirs:
2424
- "{{ galaxy_config.galaxy.job_working_directory }}"
2525
- "{{ galaxy_config.galaxy.new_file_path }}"
2626
- "{{ galaxy_tus_upload_store if galaxy_config.gravity.tusd.enable else ' ' }}"
27+
2728
admin_ssh_keys: false
2829
enable_telegraf: false
2930
enable_flower: false
@@ -38,13 +39,22 @@ galaxy_manage_cleanup: true # Requires tmpwatch(8) or tmpreaper(8) present
3839
galaxy_tmpclean_dirs: "{{ csnt_galaxy_tmpclean_dirs }}"
3940
galaxy_layout: root-dir
4041
galaxy_root: /srv/galaxy
42+
galaxy_mutable_config_dir: "{{ galaxy_root }}/var/config"
43+
galaxy_gravity_state_dir: "{{ galaxy_root }}/var/gravity"
44+
galaxy_tool_dependency_dir: "{{ galaxy_root }}/var/dependencies"
4145
galaxy_user: {name: "{{ galaxy_user_name }}", shell: /bin/bash}
4246
galaxy_commit_id: release_24.2
4347
galaxy_force_checkout: true
48+
galaxy_job_config_file: "{{ galaxy_config_dir }}/galaxy.yml"
49+
50+
# Miniconda
4451
miniconda_prefix: "{{ galaxy_tool_dependency_dir }}/_conda"
4552
miniconda_version: 24.11.1
4653
miniconda_channels: ['conda-forge', 'defaults']
4754

55+
# Pulsar
56+
pulsar_data_dir: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}/{{ pulsar.nfs_prefix }}"
57+
4858
# Galaxy Job Configuration
4959
galaxy_job_config:
5060
runners:
@@ -166,7 +176,6 @@ galaxy_config:
166176
type: mulled_singularity
167177
- auto_install: false
168178
type: build_mulled_singularity
169-
# cache_directory: /cvmfs/singularity.galaxyproject.org/all/
170179
cache_directory: "{{ galaxy_mutable_data_dir }}/singularity/mulled"
171180
# Data Library Directories
172181
library_import_dir: "{{ csnt_library_import_dir }}"
@@ -223,7 +232,6 @@ galaxy_config:
223232
bind: "unix:{{ galaxy_mutable_config_dir }}/reports.sock"
224233
config_file: "{{ galaxy_config_dir }}/reports.yml"
225234

226-
galaxy_job_config_file: "{{ galaxy_config_dir }}/galaxy.yml"
227235

228236
galaxy_config_files_public:
229237
- src: templates/{{ inventory_hostname }}/static/welcome.html

host_vars/galaxy-qa1.galaxy.cloud.e-infra.cz/vars.yml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,6 @@ pulsar:
1414
pbs_queue: galaxyqa
1515
pbs_gpu_queue: galaxy_gpu
1616

17-
pulsar_data_dir: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}/{{ pulsar.nfs_prefix }}"
18-
19-
galaxy_mutable_config_dir: "{{ galaxy_root }}/var/config"
20-
galaxy_gravity_state_dir: "{{ galaxy_root }}/var/gravity"
21-
galaxy_tool_dependency_dir: "{{ galaxy_root }}/var/dependencies"
22-
2317
galaxy_config_files:
2418
- src: files/galaxy/themes.yml
2519
dest: "{{ galaxy_config.galaxy.themes_config_file }}"

host_vars/galaxy-qa2.galaxy.cloud.e-infra.cz/vars.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,6 @@ pulsar:
1212
nfs_prefix: pulsar-qa2
1313
pbs_queue: galaxyqa
1414
pbs_gpu_queue: galaxy_gpu
15-
pulsar_data_dir: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}/{{ pulsar.nfs_prefix }}"
16-
17-
galaxy_mutable_config_dir: "{{ galaxy_root }}/var/config"
18-
galaxy_gravity_state_dir: "{{ galaxy_root }}/var/gravity"
19-
galaxy_tool_dependency_dir: "{{ galaxy_root }}/var/dependencies"
2015

2116
galaxy_config_files:
2217
- src: files/galaxy/themes.yml

host_vars/galaxy-umsa.grid.cesnet.cz/vars.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
# where to put most of the data; we use RBD or NBD volumes
22
rbd_mount_point: /rbd
33
galaxy_mutable_data_dir: "{{ rbd_mount_point }}/galaxy-umsa_data"
4-
galaxy_mutable_config_dir: "{{ galaxy_root }}/var/config"
5-
galaxy_gravity_state_dir: "{{ galaxy_root }}/var/gravity"
6-
galaxy_tool_dependency_dir: "{{ galaxy_root }}/var/dependencies"
74

85
galaxy_commit_id: release_24.2
96
# galaxy_build_client: false
@@ -31,8 +28,6 @@ pulsar:
3128
pbs_queue: galaxyumsa
3229
pbs_gpu_queue: galaxy_gpu
3330

34-
pulsar_data_dir: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}/{{ pulsar.nfs_prefix }}"
35-
3631
galaxy_config_files:
3732
- src: files/galaxy/themes.yml
3833
dest: "{{ galaxy_config.galaxy.themes_config_file }}"

host_vars/usegalaxy.cz/vars.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@ extra_certbot_domains:
55
# where to put most of the data; we use RBD or NBD volumes
66
rbd_mount_point: /rbd
77
galaxy_mutable_data_dir: "{{ rbd_mount_point }}/data"
8-
galaxy_mutable_config_dir: "{{ galaxy_root }}/var/config"
9-
galaxy_gravity_state_dir: "{{ galaxy_root }}/var/gravity"
10-
galaxy_tool_dependency_dir: "{{ galaxy_root }}/var/dependencies"
118

129
galaxy_commit_id: release_24.2
1310
#galaxy_build_client: false
@@ -26,8 +23,6 @@ pulsar:
2623
pbs_queue: galaxycz
2724
pbs_gpu_queue: galaxy_gpu
2825

29-
pulsar_data_dir: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}/{{ pulsar.nfs_prefix }}"
30-
3126
galaxy_config_files:
3227
- src: files/galaxy/themes.yml
3328
dest: "{{ galaxy_config.galaxy.themes_config_file }}"

influxdata-archive_compat.key

Lines changed: 0 additions & 29 deletions
This file was deleted.

0 commit comments

Comments
 (0)