-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcentaurus.yml
102 lines (86 loc) · 3.04 KB
/
centaurus.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
---
- hosts: centaurus
vars:
# Ubuntu doesn't have Python2 by default
# See e.g. https://www.toptechskills.com/ansible-tutorials-courses/how-to-fix-usr-bin-python-not-found-error-tutorial/
- ansible_python_interpreter: /usr/bin/python3
# Galaxy user and group on system
- galaxy_user: "centaurus-galaxy"
- galaxy_uid: 22223
- galaxy_group: "galaxy"
- galaxy_gid: 400
# Extra groups to add Galaxy user to
- extra_groups:
- group: "ls-bcf"
gid: 337111
# System Python and PostgreSQL versions
- python_version: "3.10.5"
- postgresql_version: "14"
# Postfix settings
- postfix_host_name: "centaurus.itservices.manchester.ac.uk"
- postfix_relay_host: "smtp.manchester.ac.uk"
# Default job runner
- galaxy_default_runner: "jse_drop_serial"
# Base installation directory and other paths set in the
# production_config.yml file for the 'production' instance
# Options when migrating to a new VM
# NB SQL database file should be on the remote server
##- galaxy_new_db_sql: "/home/centaurus-galaxy/pg_dump-2024-03-12.sql"
##- galaxy_reinstall_conda: yes
# Options when updating Python version
##- galaxy_force_reinstall_python: yes
##- galaxy_force_reinstall_venv: yes
# Options when updating Galaxy version
##- galaxy_remove_mako_templates: yes
# Uncomment for faster tool installation
# NB may cause issues with dependency installation
- galaxy_install_tool_extra_args: "--no-wait"
# Define proxy environment variables if needed
##- proxy_env:
## http_proxy: 'http://updateproxy.manchester.ac.uk:3128'
## https_proxy: 'https://updateproxy.manchester.ac.uk:3128
vars_files:
# Instance-specific variables
- instances/centaurus/production_versions.yml
- instances/centaurus/production_config.yml
- instances/centaurus/production_resolvers.yml
- instances/centaurus/production_local_tools.yml
- instances/centaurus/{{ centaurus_secrets }}
# Variables common to production and devel
- instances/centaurus/job_conf.yml
- instances/centaurus/shed_tools_{{ galaxy_install_mode }}.yml
- instances/centaurus/tool_data_{{ galaxy_install_mode }}.yml
- instances/centaurus/custom_scss.yml
- instances/centaurus/tool_data_tables.yml
- instances/centaurus/sanitize_whitelist.yml
# SSL certs parameterised so use same YAML file
# for production and devel
- instances/centaurus/ssl_certs.yml
roles:
# Configure host VM
- galaxy-user
- python3
- nginx
- postgresql
# SSL certificates
- role: certbot
when: enable_https
# Postfix mail client
- role: postfix-null-client
when: enable_smtp
# Local JSEDrop service
- role: jsedrop
jsedrop_drop_dir: "{{ galaxy_jse_drop_dir }}"
when: enable_local_jse_drop
# Install and configure Galaxy
- galaxy-utils
- galaxy
# Set up users, tools etc
- galaxy-create-users
- galaxy-install-tools
- galaxy-set-default-quota
# Additional set up
- galaxy-audit-report
## Use this to set environment variables on the remote
## when ansible tasks run (e.g. proxy settings)
#environment: "{{ proxy_env }}"