diff --git a/ansible.cfg b/ansible.cfg index 803e98f..a7e9653 100644 --- a/ansible.cfg +++ b/ansible.cfg @@ -22,3 +22,4 @@ always = True [ssh_connection] pipelining = true +ssh_args = -o GSSAPIAuthentication=no -o GSSAPIDelegateCredentials=no diff --git a/dependency_resolvers_conf.xml b/dependency_resolvers_conf.xml deleted file mode 100644 index 29a9381..0000000 --- a/dependency_resolvers_conf.xml +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/files/pulsar_repo/0.15.6/recursive_rsync.patch b/files/pulsar_repo/0.15.6/recursive_rsync.patch new file mode 100644 index 0000000..a83f003 --- /dev/null +++ b/files/pulsar_repo/0.15.6/recursive_rsync.patch @@ -0,0 +1,53 @@ +--- a/staging/down.py 2024-11-15 14:28:46.166714601 +0000 ++++ b/staging/down.py 2026-04-27 14:18:40.826792741 +0000 +@@ -103,7 +103,7 @@ + if output_generated: + self._attempt_collect_output('output', output_file) + +- for galaxy_path, pulsar in self.pulsar_outputs.output_extras(output_file).items(): ++ for galaxy_path, pulsar in self.pulsar_outputs.output_extra_files_dir(output_file).items(): + self._attempt_collect_output('output', path=galaxy_path, name=pulsar) + # else not output generated, do not attempt download. + +--- a/staging/__init__.py 2024-11-15 14:28:46.166714601 +0000 ++++ b/staging/__init__.py 2026-04-27 14:12:38.332467975 +0000 +@@ -309,3 +309,19 @@ + files_directory = "{}_files{}".format(basename(output_file)[0:-len(".dat")], self.path_helper.separator) + names = filter(lambda o: o.startswith(files_directory), self.output_directory_contents) + return dict(map(lambda name: (local_path(name), name), names)) ++ ++ ++ def output_extra_files_dir(self, output_file): ++ """ ++ Returns dict mapping local path to remote name. ++ """ ++ print(output_file) ++ output_directory = dirname(output_file) ++ ++ def local_path(name): ++ return join(output_directory, self.path_helper.local_name(name)) ++ ++ name = "{}_files{}".format(basename(output_file)[0:-len(".dat")], self.path_helper.separator) ++ edir = dict() ++ edir[local_path(name)] = name ++ return edir + +--- a/transport/ssh.py 2024-11-15 14:28:46.166714601 +0000 ++++ b/transport/ssh.py 2026-04-27 14:05:24.769565794 +0000 +@@ -7,6 +7,7 @@ + def rsync_get_file(uri_from, uri_to, user, host, port, key): + cmd = [ + 'rsync', ++ '-src', + '-e', + 'ssh -i {} -p {} {}'.format(key, port, ' '.join(SSH_OPTIONS)), + '{}@{}:{}'.format(user, host, uri_from), +@@ -19,6 +20,8 @@ + _ensure_dir(uri_to, key, port, user, host) + cmd = [ + 'rsync', ++ '-src', ++ '--chmod=F664,D775', + '-e', + 'ssh -i {} -p {} {}'.format(key, port, ' '.join(SSH_OPTIONS)), + uri_from, diff --git a/group_vars/pulsarservers.yml b/group_vars/pulsarservers.yml index 33b1b7f..d7a22b9 100644 --- a/group_vars/pulsarservers.yml +++ b/group_vars/pulsarservers.yml @@ -1,11 +1,22 @@ drmaa_version: 1.0.19 pbs_server: pbs-m1.metacentrum.cz install_nfs_conda: false +conda_auto_init: "{{ install_nfs_conda }}" +pulsar_network_homedir: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}" + +# Miniconda settings +miniconda_prefix: "{{ pulsar_network_homedir }}/conda" +miniconda_exec: "{{ miniconda_prefix }}/bin/mamba" +miniconda_version: 23.1.0 +miniconda_channels: + - 'bioconda' + - 'conda-forge' +csnt_dependency_resolvers: {} # only galaxyproject.pulsar role vars below +pulsar_user: "{{ pulsar.user_name }}" pulsar_root: /opt/pulsar pulsar_package_version: "0.15.6" -pulsar_network_homedir: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}" pulsar_data_dir: "{{ pulsar_network_homedir }}/{{ pulsar.nfs_prefix }}" pulsar_staging_dir: "{{ pulsar_data_dir }}/files/staging" pulsar_cleanup_dir: "{{ pulsar_data_dir }}/files/cleanup_jobs" @@ -13,6 +24,7 @@ pulsar_cleanup_delay: "7d" # DEMON: pulsar-re needs this to have over 30d pulsar_persistence_dir: "{{ pulsar_root }}/files/persistent" pulsar_dependencies_dir: "{{ pulsar_data_dir }}/deps" pulsar_singularity_cachedir: "{{ pulsar_network_homedir }}/.singularity" +pulsar_package_change_dir: "{{ pulsar_root }}/venv/lib/python3.11/site-packages/pulsar/client" pulsar_separate_privileges: true pulsar_pip_install: true pulsar_pycurl_ssl_library: openssl @@ -52,28 +64,9 @@ pulsar_yaml_config: amqp_publish_retry_interval_step: 10 amqp_publish_retry_interval_max: 60 - ## DEMON: this setting is specific for RE Galaxy and pulsar-re cause usegalaxy.cz and galaxy-umsa depends only on singu;arity images - # - ## We also need to create the dependency resolvers configuration so pulsar knows how to find and install dependencies - ## for the tools we ask it to run. The simplest method which covers 99% of the use cases is to use conda auto installs - ## similar to how Galaxy works. - #dependency_resolution: - # resolvers: - # - type: conda - # auto_init: true - # auto_install: true - # ensure_channels: "{{ conda_channels|join(',') }}" - # exec: "{{ conda_exec }}" - # prefix: "{{ conda_prefix }}" - container_resolvers: - - type: explicit_singularity - - cache_directory: /cvmfs/singularity.galaxyproject.org/all/ - type: cached_mulled_singularity - - auto_install: true - type: mulled_singularity - - auto_install: false - cache_directory: /cvmfs/singularity.galaxyproject.org/all/ - type: build_mulled_singularity + ## DEMON: resolvers is an empty list in most cases (for Galaxy supporting Singularity images over CVMFS instead of Conda) + dependency_resolution: + resolvers: "{{ csnt_dependency_resolvers }}" managers: _default_: type: queued_drmaa diff --git a/host_vars/pulsar-re2.grid.cesnet.cz/secret.yml b/host_vars/pulsar-re2.grid.cesnet.cz/secret.yml new file mode 100644 index 0000000..e3cb3aa --- /dev/null +++ b/host_vars/pulsar-re2.grid.cesnet.cz/secret.yml @@ -0,0 +1,44 @@ +$ANSIBLE_VAULT;1.1;AES256 +38363034333061383832316233613735333633653034643435663733663064323331646137633130 +6133613965393661663934646639353833656432313532630a666234396134303866303735636533 +64613538373265323631316339366335353161313937663663386633356466643533656531333136 +3735383133373535300a353731366138333731666462636261393632386263616666366466333738 +37323161303563393636616134333132306261613562323930383439343131663265326134346562 +32633732363435313935373234666532393261396237396563623830643266633936633661346632 +36333839383535343734326664393032666163373165633936333031313631343362626431623162 +61643264623464613862393635633631613136356232633663633461303931363737343236633864 +37633935616365336464316333626166343465633134336132353037343664623364623233363139 +32306139303335396135396533376231363137346339306335353137663166303132393865313438 +64333063306134396131366331656332316563653037313366633835653730333866623166316264 +39363566623931616438303034646438316564623336303335363630623165653166633431353133 +64656438323363333465323565623133343234616563316236663261363165663539343861666632 +33353166363937366265393430633738356334626263643132623637653265363831643564343434 +66313266306163356138373339346165616436613764623364386333316131303363656366356239 +32383166373139343136393537383537303130373961313761323133326637626165326134643738 +35623230353937313535656231626639636436373234333061326131376263613131643230323732 +62353231316463663462303339333364353538326333333464386635616636393061633239346464 +37313862353562363537303939656439316530323364386262373063643434343062376135316631 +61633364303632313262653336343238313133316433326439396233383264313035626136663633 +38376661656438626638363261643631366430666439346632616361353334663465376437303362 +61396133623562313863633130373331363836313536633865373363663064626639343861663061 +34326530366432383066313862656164363131353232393435653630303532336631666361313662 +33653864623034663364313562323961306637656537626637376532656166343031316565653833 +33376530323130623635343432326465313233643137323663633030306433383633323135386533 +64326339376336303130303032613936336439383565353838376438323065633035376532323933 +33613837363664303432336431306636366431323332333831663434636232323063343931363937 +31306164383031626537353766663431366265396132666563616461366132373863316464373064 +39383634376465646163653264393235646165633830663131333961366434333935663138623165 +64343563626131646136393264376565643234306530653963623431653333363161343263653431 +39346465323565633566613636323434363039633562353430303930653463323966623535643838 +35643438313563353966646262343931353331373066386234393562653734333138353937306531 +34663333323830356232643635386535666466613230383833316632316138396233656263626665 +63643531333366356339353030373435343663376563333836313038636331383966633763393864 +39363739393636363931353337336661326662326230643031633932633737613436613261333233 +61343963663164643162633662623032356662646631643834363466346530373834653338383739 +64333239653332313964323137653037636363346662623361653861636165616236353963646235 +66643132386436373836363666626339626630646136633264663336353430363566313734346265 +61616166323132353539393763626430666435623563323830616330383162613631303963656535 +64623639643461323163613837363765316431613937393361393235373537383562336537393561 +34636262643163376332353030636437323566616537666238313761346566666537353033653361 +30323531353635326332623536613631393337633361623333393863653064313531326561363636 +346562396631323335386463373335363435 diff --git a/host_vars/pulsar-re2.grid.cesnet.cz/vars.yml b/host_vars/pulsar-re2.grid.cesnet.cz/vars.yml new file mode 100644 index 0000000..4ab40c5 --- /dev/null +++ b/host_vars/pulsar-re2.grid.cesnet.cz/vars.yml @@ -0,0 +1,30 @@ +# Galaxy/Pulsar user setup +pulsar: + user_name: galaxyelixir + uid: 2469 + gid: 10145 + group: galaxyelixir + nfs_home: "brno11-elixir" + nfs_prefix: pulsar-re + +miniconda_channels: + - 'bioconda' + - 'conda-forge' + - 'petrnovak' +miniconda_prefix: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}/anaconda3" +miniconda_exec: "{{ miniconda_prefix }}/bin/mamba" + +pulsar_cleanup_delay: "40d" # DEMON: pulsar-re* need this to have over 30d +csnt_dependency_resolvers: + - type: conda + auto_init: true + auto_install: true + ensure_channels: "{{ miniconda_channels|join(',') }}" + exec: "{{ miniconda_exec }}" + prefix: "{{ miniconda_prefix }}" + +# Put your Galaxy server's fully qualified domain name (FQDN) (or the FQDN of the RabbitMQ server) above. +rabbitmq_hostname: "galaxy-re.grid.cesnet.cz" # DEMON: Important to have proper FQDN of connected Galaxy server (or at least RabbitMQ server) +rabbitmq_vhost: "pulsar2" # DEMON: must be the same rabbitmq vhost set for communication between Galaxy and Pulsar set on Galaxy side +rabbitmq_user: "{{ pulsar.user_name }}" # DEMON: must be user running connected Galaxy server +rabbitmq_port: 5671 # DEMON: must be port where to contact RabbitMQ server diff --git a/hosts.yml b/hosts.yml index ca51026..c00295d 100644 --- a/hosts.yml +++ b/hosts.yml @@ -4,6 +4,8 @@ nometapuppet: ansible_user: debian pulsar-qa2.galaxy.cloud.e-infra.cz: ansible_user: debian + pulsar-re2.grid.cesnet.cz: + ansible_user: debian pulsarservers: hosts: @@ -15,6 +17,8 @@ pulsarservers: ansible_user: debian pulsar-re.grid.cesnet.cz: ansible_user: root + pulsar-re2.grid.cesnet.cz: + ansible_user: debian pulsar-cz.grid.cesnet.cz: ansible_user: debian pulsar-eu.grid.cesnet.cz: diff --git a/pulsar.yml b/pulsar.yml index 23c316f..6b6d00c 100644 --- a/pulsar.yml +++ b/pulsar.yml @@ -4,23 +4,6 @@ become: yes - hosts: pulsarservers - vars: - pulsar_user: "{{ pulsar.user_name }}" - pbs_drmaa_version: "1.0.19" - - # Miniconda settings - miniconda_prefix: "{{ pulsar_network_homedir }}/conda" - miniconda_version: 23.1.0 - miniconda_base_env_packages: ['mamba'] - miniconda_channels: - - 'conda-forge' - - 'bioconda' - - 'iuc' - - 'r' - - 'anaconda' - - 'petrnovak' # DEMON: this is pecific for RE Galaxy and pulsar-re but could be usefull also for usegalaxy.cz if using RE tools - - 'defaults' - pre_tasks: - group: name: "{{ pulsar.group }}" @@ -51,12 +34,18 @@ become_user: "{{ pulsar.user_name }}" post_tasks: - ## DEMON: This task might be necessary to comment out for pulsar-re - - name: copy dependency_resolvers_config into pulsar config folder - ansible.builtin.copy: - src: dependency_resolvers_conf.xml - dest: "{{ pulsar_root }}/config/dependency_resolvers_conf.xml" + - name: Apply recursive rsync changes in pulsar package + ansible.posix.patch: + src: "files/pulsar_repo/{{ pulsar_package_version }}/recursive_rsync.patch" + basedir: "{{ pulsar_package_change_dir }}" + backup: true + strip: 1 + - name: Restart pulsar service after change + ansible.builtin.systemd: + state: restarted + name: "{{ pulsar_systemd_service_name }}" become: yes + - name: Create .drmaa folder in NFS home ansible.builtin.file: path: "{{ pulsar_network_homedir }}/.drmaa" diff --git a/roles/galaxyproject.miniconda/README.md b/roles/galaxyproject.miniconda/README.md deleted file mode 100644 index 51dc2ab..0000000 --- a/roles/galaxyproject.miniconda/README.md +++ /dev/null @@ -1,69 +0,0 @@ -galaxyproject.miniconda -======================= - -An [Ansible][ansible] role for installing and managing [Miniconda][miniconda] installation. Additionally, the role can -manage the creation of a [Conda][conda] environment that can be used to create a [venv][venv] for [Galaxy][galaxy]. - -[ansible]: https://www.ansible.com/ -[miniconda]: https://docs.conda.io/en/latest/miniconda.html -[conda]: https://docs.conda.io/en/latest/ -[venv]: https://docs.python.org/3/tutorial/venv.html -[galaxy]: https://galaxyproject.org/ - -Requirements ------------- - -A [Conda][conda]-compatible version of Linux or macOS is required. - -Role Variables --------------- - -See [defaults/main.yml](defaults/main.yml) for a full list. - -The only required variable is `miniconda_prefix`, the root of the Conda installation. - -To create arbitrary conda environments, use the variable `miniconda_conda_environments` as shown in the defaults, or the -example below. The role will also run `conda install` to update these environments if you change their list of packages -or package versions. - -To create an env named `_galaxy_` for creating a venv for [Galaxy][galaxy], set `galaxy_conda_create_env` to `true`. You -can then use `{{ miniconda_prefix }}/envs/_galaxy_/bin/virtualenv` as the value to `galaxy_virtualenv_command` in -[galaxyproject.galaxy][galaxy-role]. This is particularly useful if you need a cross-platform copy of Python and -Galaxy's venv to be deployed on a shared filesystem between a Galaxy server and cluster that may not have matching OS -distributions and versions. - -[galaxy-role]: https://github.com/galaxyproject/ansible-galaxy - -Dependencies ------------- - -None - -Example Playbook ----------------- - -```yaml -- hosts: localhost - vars: - miniconda_prefix: /conda - miniconda_conda_environments: - python@3.9: - channels: # optional, defaults to miniconda_channels - - conda-forge - - defaults - packages: - - python=3.9 - connection: local - roles: - - galaxyproject.miniconda -``` - -License -------- - -MIT - -Author Information ------------------- - -[View contributors on GitHub](https://github.com/galaxyproject/ansible-miniconda/graphs/contributors) diff --git a/roles/galaxyproject.miniconda/defaults/main.yml b/roles/galaxyproject.miniconda/defaults/main.yml deleted file mode 100644 index ae43fef..0000000 --- a/roles/galaxyproject.miniconda/defaults/main.yml +++ /dev/null @@ -1,58 +0,0 @@ ---- - -# Installers are not released for every version of conda, you can use this to -# `conda install conda={{ miniconda_version }}` a specific version of conda. If set to `latest` then the role will -# perform a `conda update conda` instead. -miniconda_version: latest - -# If you wish to install e.g. a conda-forge version of conda you can do so by setting channels. This causes -# `--override-channels --channel [--channel ...]` to be specified on the call to -# `conda install conda...` or `conda update conda`. -miniconda_channels: [] - -# Use a specific installer version and python version. The default is to use the latest installer. If you specify a -# version, it must exist in https://repo.anaconda.com/miniconda/ -# -# The Python major and minor version e.g. '3.9' (or '39') of the installer -miniconda_installer_python: null -# The conda version of the installer -miniconda_installer_version: latest - -# List packages to install into conda's base environment -# e.g. -# miniconda_base_env_packages: ['mamba'] -miniconda_base_env_packages: [] - -# Create environments using the provided description. e.g.: -# -# miniconda_conda_environments: -# python@3.9: -# channels: # optional, defaults to miniconda_channels -# - conda-forge -# - defaults -# packages: -# - python=3.9 -miniconda_conda_environments: {} - -# Automatically create a conda env using virtualenv from conda-forge for Galaxy (https://galaxyproject.org/) -galaxy_conda_create_env: false -galaxy_conda_env: _galaxy_ -galaxy_conda_env_channels: - - conda-forge - - defaults -galaxy_conda_env_packages: - - python=3.6 - - pip>=9 - - virtualenv>=16 - -# You generally should not need to set these yourself -# -# ansible_distribution is 'MacOSX' if ansible_system is 'Darwin' -# ansible_system is 'Linux' on Linux -miniconda_installer_os: "{{ ansible_distribution if ansible_system == 'Darwin' else ansible_system }}" -miniconda_installer_arch: "{{ ansible_architecture }}" -# The installer filename on https://repo.anaconda.com/miniconda/ to fetch and run -miniconda_installer: >- - Miniconda3-{{ 'py' ~ (miniconda_python | replace('.', '')) ~ '_' ~ miniconda_version if miniconda_installer_version != 'latest' else 'latest' }}-{{ miniconda_installer_os }}-{{ miniconda_installer_arch }}.sh -# The shell to call the downloaded installer script with -miniconda_installer_shell: /bin/sh diff --git a/roles/galaxyproject.miniconda/meta/.galaxy_install_info b/roles/galaxyproject.miniconda/meta/.galaxy_install_info deleted file mode 100644 index 3b859ac..0000000 --- a/roles/galaxyproject.miniconda/meta/.galaxy_install_info +++ /dev/null @@ -1,2 +0,0 @@ -install_date: Mon Mar 27 12:26:27 2023 -version: 0.3.1 diff --git a/roles/galaxyproject.miniconda/meta/main.yml b/roles/galaxyproject.miniconda/meta/main.yml deleted file mode 100644 index 474e62f..0000000 --- a/roles/galaxyproject.miniconda/meta/main.yml +++ /dev/null @@ -1,27 +0,0 @@ -galaxy_info: - namespace: galaxyproject - role_name: miniconda - author: The Galaxy Project - description: | - Install and maintain a Miniconda (https://docs.conda.io/en/latest/miniconda.html) installation, and optionally, for Galaxy (https://galaxyproject.org/) - company: The Galaxy Project - license: MIT - min_ansible_version: 2.7 - github_branch: main - platforms: - - name: GenericLinux - versions: - - all - - name: macOS - versions: - - all - - name: MacOSX - versions: - - 10.13 - - 10.14 - galaxy_tags: - - system - - galaxy - - conda - - miniconda -dependencies: [] diff --git a/roles/galaxyproject.miniconda/tasks/install.yml b/roles/galaxyproject.miniconda/tasks/install.yml deleted file mode 100644 index 8d39383..0000000 --- a/roles/galaxyproject.miniconda/tasks/install.yml +++ /dev/null @@ -1,26 +0,0 @@ ---- - -- name: Create miniconda installer tempfile - tempfile: - prefix: ansible-miniconda-installer. - suffix: .sh - register: miniconda_installer_tempfile - -- name: Collect miniconda installer - get_url: - url: "https://repo.anaconda.com/miniconda/{{ miniconda_installer }}" - dest: "{{ miniconda_installer_tempfile.path }}" - force: true - -- name: miniconda installer block - block: - - - name: Run miniconda installer - command: "{{ miniconda_installer_shell }} {{ miniconda_installer_tempfile.path }} -b -p {{ miniconda_prefix }}" - - always: - - - name: Remove minicoda installer - file: - path: "{{ miniconda_installer_tempfile.path }}" - state: absent diff --git a/roles/galaxyproject.miniconda/tasks/main.yml b/roles/galaxyproject.miniconda/tasks/main.yml deleted file mode 100644 index 180bbdd..0000000 --- a/roles/galaxyproject.miniconda/tasks/main.yml +++ /dev/null @@ -1,78 +0,0 @@ ---- - -- name: Check for miniconda existence - stat: - path: "{{ miniconda_prefix }}/bin/conda" - register: miniconda_exists - -- name: Include install tasks - include_tasks: install.yml - when: not miniconda_exists.stat.exists - -- name: Collect miniconda version - command: "{{ miniconda_prefix }}/bin/conda -V" - register: miniconda_installed_version - changed_when: false - -- name: Update miniconda version (exact) - command: >- - {{ miniconda_prefix }}/bin/conda install --yes - {{ '--override-channels --channel' if miniconda_channels else '' }} - {{ miniconda_channels | join(' --channel ') }} - conda={{ miniconda_version }} - when: miniconda_version != 'latest' and (miniconda_installed_version.stdout.split() | last) != miniconda_version - -- name: Update miniconda version (latest) - command: >- - {{ miniconda_prefix }}/bin/conda update --yes - {{ '--override-channels --channel' if miniconda_channels else '' }} - {{ miniconda_channels | join(' --channel ') }} - conda - register: __miniconda_conda_update_conda_output - changed_when: "'All requested packages already installed' not in __miniconda_conda_update_conda_output.stdout" - when: miniconda_version == 'latest' - -- name: Install packages to conda base environment - command: >- - {{ miniconda_prefix }}/bin/conda install --yes - {{ '--override-channels --channel' if (miniconda_channels) else '' }} - {{ miniconda_channels | join(' --channel ') }} - {{ miniconda_base_env_packages | join(' ') }} - when: miniconda_base_env_packages - -# Apparently item.value.copy always refers to the built-in copy method of the dict, whereas item.value['copy'] only does -# if the key 'copy' is not defined -- name: Create conda envs - command: >- - {{ miniconda_prefix }}/bin/conda create --yes - {{ '--override-channels --channel' if (item.value.channels | default(miniconda_channels)) else '' }} - {{ (item.value.channels | default(miniconda_channels)) | join(' --channel ') }} - {{ '--name ' ~ item.key if not item.key.startswith('/') else '--prefix ' ~ item.key }} - {{ '--copy' if (item.value['copy'] is boolean and item.value['copy']) else '' }} - {{ item.value.packages | join(' ') }} - args: - creates: "{{ miniconda_prefix ~ '/envs/' ~ item.key if not item.key.startswith('/') else item.key }}" - loop: "{{ miniconda_conda_environments | dict2items }}" - -- name: Update conda envs - command: >- - {{ miniconda_prefix }}/bin/conda install --yes - {{ '--override-channels --channel' if (item.value.channels | default(miniconda_channels)) else '' }} - {{ (item.value.channels | default(miniconda_channels)) | join(' --channel ') }} - {{ '--name ' ~ item.key if not item.key.startswith('/') else '--prefix ' ~ item.key }} - {{ '--copy' if (item.value['copy'] is boolean and item.value['copy']) else '' }} - {{ item.value.packages | join(' ') }} - register: __miniconda_conda_install_output - changed_when: "'All requested packages already installed' not in __miniconda_conda_install_output.stdout" - loop: "{{ miniconda_conda_environments | dict2items }}" - -- name: Create Galaxy conda env - command: >- - {{ miniconda_prefix }}/bin/conda create --yes - {{ '--override-channels --channel' if galaxy_conda_env_channels else '' }} - {{ galaxy_conda_env_channels | join(' --channel ') }} - --name {{ galaxy_conda_env }} - {{ galaxy_conda_env_packages | join(' ') }} - args: - creates: "{{ miniconda_prefix }}/envs/{{ galaxy_conda_env }}" - when: galaxy_conda_create_env diff --git a/roles/galaxyproject.miniconda/tests/inventory b/roles/galaxyproject.miniconda/tests/inventory deleted file mode 100644 index 878877b..0000000 --- a/roles/galaxyproject.miniconda/tests/inventory +++ /dev/null @@ -1,2 +0,0 @@ -localhost - diff --git a/roles/galaxyproject.miniconda/tests/test.yml b/roles/galaxyproject.miniconda/tests/test.yml deleted file mode 100644 index 3a39277..0000000 --- a/roles/galaxyproject.miniconda/tests/test.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- hosts: localhost - remote_user: root - vars: - miniconda_prefix: "{{ lookup('env', 'TRAVIS_BUILD_DIR') }}/conda" - roles: - - ansible-miniconda diff --git a/roles/metacentrum.krbnfs/tasks/main.yml b/roles/metacentrum.krbnfs/tasks/main.yml index 780aa98..8ff8b51 100644 --- a/roles/metacentrum.krbnfs/tasks/main.yml +++ b/roles/metacentrum.krbnfs/tasks/main.yml @@ -10,7 +10,7 @@ - name: Metacentrum repo key apt_key: url: https://repo.metacentrum.cz/key.asc - id: F11383F552848522E4EACA443573FD94A385CDB0 + id: 3CCAEBFDC3398E762111FB2B403875C13E1F1A7D when: ansible_os_family == 'Debian' - name: Metacentrum repo