Skip to content
52 changes: 52 additions & 0 deletions files/pulsar_repo/0.15.14/recursive_rsync.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
--- a/staging/__init__.py 2026-05-05 00:09:44.381594787 +0200
+++ b/staging/__init__.py 2026-05-05 00:12:14.175296482 +0200
@@ -358,3 +358,18 @@
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/staging/down.py 2026-05-05 00:12:46.458249361 +0200
+++ b/staging/down.py 2026-05-05 00:15:54.391439324 +0200
@@ -118,7 +118,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/transport/ssh.py 2026-05-04 16:02:17.470665842 +0200
+++ b/transport/ssh.py 2026-05-05 00:19:04.621400669 +0200
@@ -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,
1 change: 1 addition & 0 deletions group_vars/pulsarservers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ miniconda_channels:
- 'bioconda'
- 'conda-forge'
csnt_dependency_resolvers: {}
csnt_use_recursive_rsync: yes

# only galaxyproject.pulsar role vars below
pulsar_user: "{{ pulsar.user_name }}"
Expand Down
49 changes: 43 additions & 6 deletions host_vars/pulsar-re.grid.cesnet.cz/secret.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,44 @@
$ANSIBLE_VAULT;1.1;AES256
31656362376365366635666637393832623330656636343363336432323734643532653139656535
6236313761383931636563353462626631336238366339350a383865356638396531623164343362
62313863336264346136326566373933396631326432313531383164626466333761333666656266
6231373131313665370a316339653636643936306438666364333934343032346666623431663061
66363363393264353933633065343037303039306136316466383239353532333463363663343066
3436396666326261336236323263613439633664383431366230
39323666313433646536393535326563373739326233343864313430643666363838643266616232
3031373362373931363866643962393262306139326439380a353135396131633136643864663939
33313537366232613733323262313965323163393966636332353964323633653361376361356133
6361376132353330330a623863303830366363616639646139316630353962333630393831366536
38376561333333333964616134356633616433313130653561613938343562346464313634666536
33613261613265306464633230633238356434383565663463383137643438393733336333643062
38353432613362663933313864616435363639323663643331616463343330393362616262643231
32383834316465393839363762353462376364356234373534306538363838363836356334346361
63366566353963633763663335613436643339316639396465306131313562653332336263313933
37383239336431326130613435366138383362616365613735633762616135376135343462383939
34626138616438663065303730666166366335396562356235383432646639313465313734353838
66363063396436316562336563336266646530626365376531303863396238616238623139353166
34316433613162633530626139316263623332333765336139636231613963363230316632343132
39663366393830376136633163363131333539336163623439353033366134366464633962643931
32663738666264633161626437346331653866653634616131346338356133343130323634643431
65646463643233353439313439383065376662363965333236323730663339623039376138663261
34366662333936363037346634396566666465333133643432616265656539336231396566663338
35646463303137353830623537363737656537333163383361653564656135633663373366313339
30636565656435666537616433363735616634386665643037323839643838323730363336343538
39363537306135336637303334393637646661363536616435333832613636396433393432616331
66663735323236633638663663333265613266373237376639656137353937623034386436333334
33616465393536303539663335626662316266623161366439643864626631343332653063653834
34323762373864323932323539333230663530613339386163306636643630313031623230326131
32316638626430663830323062383537313162656564336163323131636135646335396431343862
38616162623162613764643531333562353834303766353361646339336165383861363637396263
35346432356333636333313563636632643932373261333038663663333237363133643866306239
36306634656462633663653839653165326362306465646535646562393039343265323937363533
31626131376663353534383366366337633636383365366438303036656532616437303234633432
31653963316161663636366663633935313534343235396661353234353133336262323230326637
37393230313061313230373939373163663236643131666665313763383862396466396430373766
35313039333665373439633732383235373765393033396430356137633263656336396132346164
64663436656136653661303662366239393336303063323932383266346532333561613863373664
39326466396438373236653835343839333131313466323366626665643562336464656135623965
30373361396166616564643237346537653433313432323962366466303161393935343238393936
39336636623765643837646264363930363830303763333964616532323165623566316533656333
63646365343163653239363130363266343665613731363365623633656565313063656666373366
66373365643537376134323861313833643933313434653230623036653034656533613435396161
32303231636461646365323765666365633062666235666366316566623730396563386230356335
64623233666164633366623135613566656566396631646130633036616435303063386130323666
39326537343761383830376563623162636161393338383361393830313761323932613232663964
61303331343539343365333031643637313033626661353233636234336561656134353464393165
61313337376439396366636239313732643830326361643738623039356530313238613461616534
636331353334616264353963303536393832
33 changes: 20 additions & 13 deletions host_vars/pulsar-re.grid.cesnet.cz/vars.yaml
Original file line number Diff line number Diff line change
@@ -1,23 +1,30 @@
# Galaxy/Pulsar user setup
pulsar:
## Specific settings for pulsar-re (needs to be moved into host_vars foder
user_name: galaxyelixir
uid: 2469
gid: 10145
group: galaxyelixir
nfs_home: "brno11-elixir"
nfs_prefix: pulsar-re
## Specific settings for pulsar-cz (needs to be moved into host_vars foder
# user_name: galaxyeu
# uid: 5430
# gid:
# nfs_home: "praha5-elixir"
# nfs_prefix: pulsar-cz
## Specific settings for pulsar-umsa (needs to be moved into host_vars foder
# user_name: galaxyumsa
# uid: 10456
# gid:
# nfs_home: "brno11-elixir"
# nfs_prefix: pulsar-umsa

install_nfs_conda: true
miniconda_channels:
- 'bioconda'
- 'conda-forge'
- 'petrnovak'
miniconda_prefix: "/storage/{{ pulsar.nfs_home }}/home/{{ pulsar.user_name }}/anaconda3"
miniconda_exec: "{{ miniconda_prefix }}/bin/mamba"

csnt_use_recursive_rsync: yes
pulsar_package_version: 0.15.14
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)
Expand Down
2 changes: 2 additions & 0 deletions pulsar.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,13 @@
basedir: "{{ pulsar_package_change_dir }}"
backup: true
strip: 1
when: csnt_use_recursive_rsync
- name: Restart pulsar service after change
ansible.builtin.systemd:
state: restarted
name: "{{ pulsar_systemd_service_name }}"
become: yes
when: csnt_use_recursive_rsync

- name: Create .drmaa folder in NFS home
ansible.builtin.file:
Expand Down
1 change: 0 additions & 1 deletion roles/metacentrum.krbnfs/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
name:
- openpbs-client
- libopenpbs-dev
- singularity-ce
- nfs-common

- name: PBS config
Expand Down
1 change: 0 additions & 1 deletion roles/metacentrum.pulsar/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
- libssl-dev
- virtualenv
- libgnutls28-dev
- squashfs-tools # DEMON: needed by singularity roles
- rsync
- tmpreaper
state: present
Expand Down