Skip to content

Commit 4380d28

Browse files
authored
Merge pull request #160 from bedroge/eessi.io
Switch to new infrastructure + eessi.io repo
2 parents acd1712 + e4f085b commit 4380d28

File tree

10 files changed

+49
-94
lines changed

10 files changed

+49
-94
lines changed

.github/workflows/build-test-release-client-packages.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -147,12 +147,12 @@ jobs:
147147
run: sudo cvmfs_config setup
148148

149149
- name: Test repository access
150-
run: ls /cvmfs/pilot.eessi-hpc.org/
150+
run: ls /cvmfs/software.eessi.io/
151151

152152
test-rpm-package:
153153
needs: build-linux-packages
154154
runs-on: ubuntu-latest
155-
container:
155+
container:
156156
image: centos:centos7
157157
options: --device /dev/fuse --privileged
158158

@@ -183,10 +183,10 @@ jobs:
183183

184184
- name: Mount the repositories
185185
#run: cvmfs_config setup
186-
run: mkdir -p /cvmfs/pilot.eessi-hpc.org && mount -t cvmfs pilot.eessi-hpc.org /cvmfs/pilot.eessi-hpc.org
186+
run: mkdir -p /cvmfs/software.eessi.io && mount -t cvmfs software.eessi.io /cvmfs/software.eessi.io
187187

188188
- name: Test repository access
189-
run: ls /cvmfs/pilot.eessi-hpc.org/
189+
run: ls /cvmfs/software.eessi.io/
190190

191191
test-tar-package:
192192
needs: build-linux-packages
@@ -223,7 +223,7 @@ jobs:
223223
run: sudo cvmfs_config setup
224224

225225
- name: Test repository access
226-
run: ls /cvmfs/pilot.eessi-hpc.org/
226+
run: ls /cvmfs/software.eessi.io/
227227

228228
# test-macos-package:
229229
# needs: build-macos-package
@@ -254,10 +254,10 @@ jobs:
254254
# run: echo "CVMFS_CLIENT_PROFILE=single" | sudo tee /etc/cvmfs/default.local
255255
#
256256
# - name: Mount the repositories
257-
# run: sudo mkdir -p /Users/Shared/cvmfs/pilot.eessi-hpc.org && sudo mount -t cvmfs pilot.eessi-hpc.org /Users/Shared/cvmfs/pilot.eessi-hpc.org
257+
# run: sudo mkdir -p /Users/Shared/cvmfs/software.eessi.io && sudo mount -t cvmfs software.eessi.io /Users/Shared/cvmfs/software.eessi.io
258258
#
259259
# - name: Test repository access
260-
# run: ls /Users/Shared/cvmfs/pilot.eessi-hpc.org/
260+
# run: ls /Users/Shared/cvmfs/software.eessi.io/
261261

262262
release:
263263
#needs: [build-linux-packages, build-macos-package, test-deb-package, test-rpm-package, test-macos-package, test-tar-package]

inventory/group_vars/all.yml

Lines changed: 18 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ eessi_cvmfs_repos_enabled: true
88
eessi_email: support@eessi.io
99

1010
#
11-
# Defaults for eessi-hpc.org repos.
11+
# Defaults for eessi.io repos.
1212
#
1313

1414
# We do not use a config repo anymore.
@@ -18,97 +18,39 @@ eessi_cvmfs_config_repo: {}
1818
# /etc/cvmfs/keys/*.pub
1919
# Note: you first have to run the stratum0.yml playbook once to generate the repositories and keys.
2020
eessi_cvmfs_keys:
21-
- path: /etc/cvmfs/keys/eessi-hpc.org/cvmfs-config.eessi-hpc.org.pub
21+
- path: /etc/cvmfs/keys/eessi.io/software.eessi.io.pub
2222
key: |
23-
-----BEGIN PUBLIC KEY-----
24-
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqoTBc/Eksr9ECEOoCzHA
25-
F20UjePR7mJyWB13eTBXnjq7PLKKilfk2llLKetPIRMEmbvp97NiQ9ALe/tiGDzT
26-
1Wg82Mf9oO4DNQYrTfE/MP5inIrMtSv1WnYJYV4Bgm24s8IhHXytIf1D4qt0x1v5
27-
0yRui0dwaZrErWKRKufbJ6ehmEDHuVSEAujrORyig/jYFKVyTaCsXnmwFDJmX2Uw
28-
RGCaf0M9ZLYs9t/SWA0s08rle5kH82hgBsIvUr7PLT7hbU407VK6+Y02tuxbI0JR
29-
+hCt494UsFs3tchmTebpK+x3pVRXybQ66Qm1mQiaz+2VbUJdQEov4RCC5PcOmOOk
30-
BwIDAQAB
31-
-----END PUBLIC KEY-----
32-
- path: /etc/cvmfs/keys/eessi-hpc.org/pilot.eessi-hpc.org.pub
33-
key: |
34-
-----BEGIN PUBLIC KEY-----
35-
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAommtaoqQ36Rb/cFnqUWg
36-
8FoYCOjJWVBMQ4sVZ87oFRWehOUbcfy/ah85D9055HQws7i/hLNGJJAa7Es3E2o8
37-
v8LtSlRdfR1A7b7LA6p3213HHz6dNU6I1riwtE2OP7/w4Q3+Agj1iRtW535GwzGo
38-
4ZbewL8T1kbyaEm4HyefoitHXJthoPyTlYAhvAegIil1VJPhJZW+q/NWxnsd9QGJ
39-
uAtbSICQg6mBJI50KiCBYmKHOAjH2W8qEnLWc7JoPoNvAHuMx1ya6YerBM5T9Esm
40-
HJN0HHOVdRIwNjjPkV2jIqhJoI85no89v8/V45SFPVo+A7N0Cj4QdQrQTezpnlby
41-
FQIDAQAB
42-
-----END PUBLIC KEY-----
43-
# The following (duplicate) key can be removed after this PR has been merged:
44-
# https://github.com/galaxyproject/ansible-cvmfs/pull/32
45-
- path: /etc/cvmfs/keys/eessi-hpc.org/data.eessi-hpc.org.pub
46-
key: |
47-
-----BEGIN PUBLIC KEY-----
48-
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAommtaoqQ36Rb/cFnqUWg
49-
8FoYCOjJWVBMQ4sVZ87oFRWehOUbcfy/ah85D9055HQws7i/hLNGJJAa7Es3E2o8
50-
v8LtSlRdfR1A7b7LA6p3213HHz6dNU6I1riwtE2OP7/w4Q3+Agj1iRtW535GwzGo
51-
4ZbewL8T1kbyaEm4HyefoitHXJthoPyTlYAhvAegIil1VJPhJZW+q/NWxnsd9QGJ
52-
uAtbSICQg6mBJI50KiCBYmKHOAjH2W8qEnLWc7JoPoNvAHuMx1ya6YerBM5T9Esm
53-
HJN0HHOVdRIwNjjPkV2jIqhJoI85no89v8/V45SFPVo+A7N0Cj4QdQrQTezpnlby
54-
FQIDAQAB
55-
-----END PUBLIC KEY-----
56-
- path: /etc/cvmfs/keys/eessi-hpc.org/ci.eessi-hpc.org.pub
57-
key: |
58-
-----BEGIN PUBLIC KEY-----
59-
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAommtaoqQ36Rb/cFnqUWg
60-
8FoYCOjJWVBMQ4sVZ87oFRWehOUbcfy/ah85D9055HQws7i/hLNGJJAa7Es3E2o8
61-
v8LtSlRdfR1A7b7LA6p3213HHz6dNU6I1riwtE2OP7/w4Q3+Agj1iRtW535GwzGo
62-
4ZbewL8T1kbyaEm4HyefoitHXJthoPyTlYAhvAegIil1VJPhJZW+q/NWxnsd9QGJ
63-
uAtbSICQg6mBJI50KiCBYmKHOAjH2W8qEnLWc7JoPoNvAHuMx1ya6YerBM5T9Esm
64-
HJN0HHOVdRIwNjjPkV2jIqhJoI85no89v8/V45SFPVo+A7N0Cj4QdQrQTezpnlby
65-
FQIDAQAB
66-
-----END PUBLIC KEY-----
23+
-----BEGIN PUBLIC KEY-----
24+
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyau1UFUcoiqpE5U9StON
25+
W0Trc3PM02AA5kYgknrqZJdusj5PcNg7rhOnrd+SX8BIiVtVMr6mqORXsJ2FNydJ
26+
lfm512GcmurM154m6Hz4I+UttcpVLe1CvlyxjjCrN0siSiPnLDONy3Ih1PWyRlA/
27+
sobSaIhx3Vyn1IzC0nbjstKObAYJs2kjokS+cipX2oIXJSoxkhvXcxmiMCi2GQIs
28+
KTQDT+bATs9eK+ZqY4n5x8VX87AlMBQuSCP5mA8VQPx4aCf8AjHWAn3qmPrhk3od
29+
Z/Cl9vrYzoWJT1HOyumv7aEv7UlY81++3w/AwYKXLJI6ioop2AotjrUm3w2U3+k7
30+
WQIDAQAB
31+
-----END PUBLIC KEY-----
6732
6833
# URLs for all the Stratum 1 servers.
6934
eessi_cvmfs_server_urls:
70-
- domain: eessi-hpc.org
35+
- domain: eessi.io
7136
use_geoapi: true
7237
urls:
73-
- "http://rug-nl.stratum1.cvmfs.eessi-infra.org/cvmfs/@fqrn@"
74-
- "http://bgo-no.stratum1.cvmfs.eessi-infra.org/cvmfs/@fqrn@"
75-
- "http://azure-us-east1.stratum1.cvmfs.eessi-infra.org/cvmfs/@fqrn@"
76-
- "http://aws-eu-west1.stratum1.cvmfs.eessi-infra.org/cvmfs/@fqrn@"
38+
- "http://aws-eu-central-s1.eessi.science/cvmfs/@fqrn@"
39+
- "http://azure-us-east-s1.eessi.science/cvmfs/@fqrn@"
7740

7841
# Configuration of all the repositories.
7942
eessi_cvmfs_repositories:
80-
- repository: pilot.eessi-hpc.org
81-
stratum0: rug-nl.stratum0.cvmfs.eessi-infra.org
43+
- repository: software.eessi.io
44+
stratum0: rug-nl-s0.eessi.science
8245
owner: "{{ cvmfs_repo_owner | default('root') }}"
83-
key_dir: /etc/cvmfs/keys/eessi-hpc.org
46+
key_dir: /etc/cvmfs/keys/eessi.io
8447
server_options:
8548
- CVMFS_AUTO_GC=false
8649
- CVMFS_AUTO_TAG_TIMESPAN="30 days ago"
8750
- CVMFS_GARBAGE_COLLECTION=true
8851
client_options: []
8952
use_for_ci: false
90-
description: Repository containing pilot versions of the EESSI software stack.
91-
- repository: data.eessi-hpc.org
92-
stratum0: rug-nl.stratum0.cvmfs.eessi-infra.org
93-
owner: "{{ cvmfs_repo_owner | default('root') }}"
94-
key_dir: /etc/cvmfs/keys/eessi-hpc.org
95-
server_options:
96-
- CVMFS_AUTO_GC=false
97-
- CVMFS_AUTO_TAG_TIMESPAN="30 days ago"
98-
- CVMFS_GARBAGE_COLLECTION=true
99-
client_options: []
100-
use_for_ci: false
101-
description: "Data files used for applications available in the EESSI stack."
102-
- repository: ci.eessi-hpc.org
103-
stratum0: rug-nl.stratum0.cvmfs.eessi-infra.org
104-
owner: "{{ cvmfs_repo_owner | default('root') }}"
105-
key_dir: /etc/cvmfs/keys/eessi-hpc.org
106-
server_options:
107-
- CVMFS_AUTO_GC=false
108-
- CVMFS_GARBAGE_COLLECTION=true
109-
client_options: []
110-
use_for_ci: true
111-
description: "Small-sized repository used for CI purposes."
53+
description: "Repository that contains the EESSI software stacks."
11254

11355
# Meta information for CVMFS Stratum servers
11456
cvmfs_server_meta_administrator: "EESSI CVMFS Administrators"

prepare-client-packages.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@
4040
- name: Make EESSI CVMFS domain configuration file
4141
copy:
4242
content: |
43-
# Stratum 1 servers for the eessi-hpc.org domain
43+
# Stratum 1 servers for the eessi.io domain
4444
CVMFS_SERVER_URL="{{ item.urls|join(';') }}"
4545
46-
# Public keys for the eessi-hpc.org domain
46+
# Public keys for the eessi.io domain
4747
CVMFS_KEYS_DIR="/etc/cvmfs/keys/{{ item.domain }}"
4848
4949
# Enable or disable the Geo API, based on the configuration file

roles/create_cvmfs_content_structure/files/.cvmfsdirtab

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
/versions/*/software/*/*/*/*/software
1010
/versions/*/software/*/*/*/*/software/*/*
1111
/versions/*/software/*/*/*/*/modules
12-
# generic and graviton2 are one level less deep
12+
# generic and some (aarch64) targets are one level less deep
1313
/versions/*/software/*/*/*/software
1414
/versions/*/software/*/*/*/software/*/*
1515
/versions/*/software/*/*/*/modules

roles/create_cvmfs_content_structure/tasks/main.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,18 @@
55
delegate_to: localhost
66
ansible.builtin.stat:
77
path: "{{ role_path }}/vars/{{ item.repository }}.yml"
8-
with_items: "{{ eessi_cvmfs_repositories }}"
9-
register: repo_vars_file
8+
with_items: "{{ cvmfs_repositories | default(eessi_cvmfs_repositories) }}"
9+
register: repo_vars_files
1010

1111
- name: "Apply do_repo for each repository with a vars file"
1212
ansible.builtin.include_tasks: do_repo.yml
1313
vars:
1414
cvmfs_repo: "{{ repo_vars_file.item.repository }}"
1515
when: repo_vars_file.stat.exists
16-
with_items: "{{ repo_vars_file.results }}"
16+
with_items: "{{ repo_vars_files.results }}"
1717
loop_control:
1818
loop_var: repo_vars_file
1919
args:
2020
apply:
21-
become: "{{ 'yes' if repo_vars_file.item.owner == 'root' else 'no' }}"
21+
become: "{{ 'true' if repo_vars_file.item.owner != lookup('env', 'USER') else 'false' }}"
22+
become_user: "{{ repo_vars_file.item.owner }}"
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Specifications of files and symlinks for the software.eessi.io CVMFS repository.
2+
# Paths for files and symlinks should be relative to the root of the repository.
3+
---
4+
files:
5+
- name: .cvmfsdirtab
6+
dest: ''
7+
mode: '644'
8+
9+
symlinks:
10+
host_injections: '$(EESSI_HOST_INJECTIONS:-/opt/eessi)'

roles/cvmfs_server_meta_info/tasks/main.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
group: root
88
mode: 0644
99
become: true
10+
when: (cvmfs_repositories | length) > 0
1011

1112
- name: Create meta information for each CVMFS repository
1213
ansible.builtin.include_tasks: repo_meta_info.yml
@@ -17,6 +18,6 @@
1718
recommended-stratum0: "http://{{ item.stratum0 }}/cvmfs/{{ item.repository }}"
1819
recommended-stratum1s: "{{ eessi_cvmfs_server_urls | selectattr('domain', 'in', item.repository) |
1920
map(attribute='urls') | map('regex_replace', '@fqrn@', item.repository) }}"
20-
with_items: "{{ eessi_cvmfs_repositories }}"
21+
with_items: "{{ cvmfs_repositories | default(eessi_cvmfs_repositories) }}"
2122
when: "'cvmfsstratum0servers' in group_names or cvmfs_role == 'stratum0'"
2223
...

roles/cvmfs_server_meta_info/tasks/repo_meta_info.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,15 @@
1818

1919
- name: Get the current meta information of this repository from the server
2020
ansible.builtin.command:
21-
cmd: "cvmfs_swissknife info -M -r {{ this_cvmfs_repo_meta['recommended-stratum0'] }}"
21+
cmd: "cvmfs_swissknife info -M -r http://localhost:{{ cvmfs_stratum0_http_ports[0] | default('80') }}/cvmfs/{{ this_cvmfs_repo.repository }}"
2222
changed_when: false
2323
register: current_repo_meta
2424

2525
- name: Update the repository's meta information
2626
ansible.builtin.command:
2727
cmd: "cvmfs_server update-repoinfo -f {{ tmp_json_file.path }} {{ this_cvmfs_repo.repository }}"
2828
when: (current_repo_meta.stdout | checksum) != json_file_stat.stat.checksum
29-
become_user: "{{ cvmfs_repo_owner }}"
29+
become_user: "{{ cvmfs_repo_owner | default('root') }}"
3030

3131
- name: Remove temporary json file
3232
ansible.builtin.file:

scripts/ingest-tarball.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
# Only if it passes these checks, the tarball gets ingested to the base dir in the repository specified below.
1414

15-
repo=pilot.eessi-hpc.org
15+
repo=software.eessi.io
1616
basedir=versions
1717
decompress="gunzip -c"
1818
# list of supported architectures for compat and software layers

stratum0.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,5 @@
1717
when: ansible_facts['os_family'] == 'RedHat'
1818
- galaxyproject.cvmfs
1919
- cvmfs_server_meta_info
20+
- create_cvmfs_content_structure
2021
...

0 commit comments

Comments
 (0)