Skip to content

Commit fa1d9b7

Browse files
Merge pull request #108 from brianhlin/SOFTWARE-5673.osg23
Add OSG 23 images (SOFTWARE-5673)
2 parents 33c72f4 + cfeee11 commit fa1d9b7

File tree

2 files changed

+61
-22
lines changed

2 files changed

+61
-22
lines changed

.github/workflows/release-series-builds.yml

Lines changed: 58 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,22 @@ on:
1515

1616
jobs:
1717
base-image-build:
18-
name: xcache:${{ matrix.osg_series }}-${{ matrix.repo }} image build
18+
name: xcache:${{ matrix.osg_series.name }}-${{ matrix.repo }} image build
1919
runs-on: ubuntu-latest
2020
strategy:
2121
fail-fast: False
2222
matrix:
2323
repo: ['development', 'testing', 'release']
24-
osg_series: ['3.6']
24+
osg_series:
25+
- name: '3.6'
26+
os: 'el7'
27+
- name: '23'
28+
os: 'el9'
29+
# FIXME: disable OSG 23 dev until we have fixed the mash
30+
# cache + signed RPMs issue in the prod repo
31+
exclude:
32+
- repo: 'development'
33+
osg_series: {name: '23', os: 'el9'}
2534
steps:
2635

2736
- uses: actions/checkout@v3
@@ -30,11 +39,11 @@ jobs:
3039
uses: actions/cache@v3
3140
with:
3241
path: /tmp/.base-buildx-cache
33-
key: base-${{ matrix.osg_series}}-${{ matrix.repo }}-buildx-${{ github.sha }}-${{ github.run_id }}
42+
key: base-${{ matrix.osg_series.name }}-${{ matrix.repo }}-buildx-${{ github.sha }}-${{ github.run_id }}
3443
# allow cache hits from previous runs of the current branch,
3544
# parent branch, then upstream branches, in that order
3645
restore-keys: |
37-
base-${{ matrix.osg_series }}-${{ matrix.repo }}-buildx-
46+
base-${{ matrix.osg_series.name }}-${{ matrix.repo }}-buildx-
3847
3948
- name: Set up Docker Buildx
4049
uses: docker/[email protected]
@@ -45,20 +54,30 @@ jobs:
4554
context: .
4655
build-args: |
4756
BASE_YUM_REPO=${{ matrix.repo }}
48-
BASE_OSG_SERIES=${{ matrix.osg_series }}
57+
BASE_OSG_SERIES=${{ matrix.osg_series.name }}
58+
BASE_OS=${{ matrix.osg_series.os }}
4959
pull: True
5060
target: xcache
5161
cache-to: type=local,dest=/tmp/.base-buildx-cache,mode=max
5262

5363
xcache-image-builds:
54-
name: ${{ matrix.image }}:${{ matrix.osg_series }}-${{ matrix.repo }} image build
64+
name: ${{ matrix.image }}:${{ matrix.osg_series.name }}-${{ matrix.repo }} image build
5565
needs: [base-image-build]
5666
strategy:
5767
fail-fast: False
5868
matrix:
5969
image: [atlas-xcache, cms-xcache, stash-cache, stash-origin]
6070
repo: ['development', 'testing', 'release']
61-
osg_series: ['3.6']
71+
osg_series:
72+
- name: '3.6'
73+
os: 'el7'
74+
- name: '23'
75+
os: 'el9'
76+
# FIXME: disable OSG 23 dev until we have fixed the mash
77+
# cache + signed RPMs issue in the prod repo
78+
exclude:
79+
- repo: 'development'
80+
osg_series: {name: '23', os: 'el9'}
6281
runs-on: ubuntu-latest
6382
steps:
6483
- uses: actions/checkout@v3
@@ -67,13 +86,13 @@ jobs:
6786
uses: actions/cache@v3
6887
with:
6988
path: /tmp/.base-buildx-cache
70-
key: base-${{ matrix.osg_series }}-${{ matrix.repo }}-buildx-${{ github.sha }}-${{ github.run_id }}
89+
key: base-${{ matrix.osg_series.name }}-${{ matrix.repo }}-buildx-${{ github.sha }}-${{ github.run_id }}
7190

7291
- name: Cache child image
7392
uses: actions/cache@v3
7493
with:
7594
path: /tmp/.${{ matrix.image }}-buildx-cache
76-
key: ${{ matrix.image}}-${{matrix.osg_series }}-${{ matrix.repo}}-build-${{ github.sha}}-${{ github.run_id }}
95+
key: ${{ matrix.image}}-${{matrix.osg_series.name }}-${{ matrix.repo}}-build-${{ github.sha}}-${{ github.run_id }}
7796

7897
- name: Set up Docker Buildx
7998
uses: docker/[email protected]
@@ -84,7 +103,8 @@ jobs:
84103
context: .
85104
build-args: |
86105
BASE_YUM_REPO=${{ matrix.repo }}
87-
BASE_OSG_SERIES=${{ matrix.osg_series }}
106+
BASE_OSG_SERIES=${{ matrix.osg_series.name }}
107+
BASE_OS=${{ matrix.osg_series.os }}
88108
target: ${{ matrix.image }}
89109
cache-from: type=local,src=/tmp/.base-buildx-cache
90110
cache-to: type=local,dest=/tmp/.${{ matrix.image }}-buildx-cache,mode=max
@@ -98,21 +118,30 @@ jobs:
98118
fail-fast: False
99119
matrix:
100120
repo: ['development', 'testing', 'release']
101-
osg_series: ['3.6']
121+
osg_series:
122+
- name: '3.6'
123+
os: 'el7'
124+
- name: '23'
125+
os: 'el9'
126+
# FIXME: disable OSG 23 dev until we have fixed the mash
127+
# cache + signed RPMs issue in the prod repo
128+
exclude:
129+
- repo: 'development'
130+
osg_series: {name: '23', os: 'el9'}
102131
steps:
103132
- uses: actions/checkout@v3
104133

105134
- name: Load stash-cache build cache
106135
uses: actions/cache@v3
107136
with:
108137
path: /tmp/.stash-cache-buildx-cache
109-
key: stash-cache-${{ matrix.osg_series }}-${{ matrix.repo}}-build-${{ github.sha}}-${{ github.run_id }}
138+
key: stash-cache-${{ matrix.osg_series.name }}-${{ matrix.repo}}-build-${{ github.sha}}-${{ github.run_id }}
110139

111140
- name: Load stash-origin build cache
112141
uses: actions/cache@v3
113142
with:
114143
path: /tmp/.stash-origin-buildx-cache
115-
key: stash-origin-${{ matrix.osg_series }}-${{ matrix.repo}}-build-${{ github.sha}}-${{ github.run_id }}
144+
key: stash-origin-${{ matrix.osg_series.name }}-${{ matrix.repo}}-build-${{ github.sha}}-${{ github.run_id }}
116145

117146
- name: Set up Docker Buildx
118147
uses: docker/[email protected]
@@ -123,7 +152,7 @@ jobs:
123152
context: .
124153
build-args: |
125154
BASE_YUM_REPO=${{ matrix.repo }}
126-
BASE_OSG_SERIES=${{ matrix.osg_series }}
155+
BASE_OSG_SERIES=${{ matrix.osg_series.name }}
127156
load: True # allow access to built images through the Docker CLI
128157
tags: stash-cache:latest
129158
target: stash-cache
@@ -135,7 +164,7 @@ jobs:
135164
context: .
136165
build-args: |
137166
BASE_YUM_REPO=${{ matrix.repo }}
138-
BASE_OSG_SERIES=${{ matrix.osg_series }}
167+
BASE_OSG_SERIES=${{ matrix.osg_series.name }}
139168
load: True # allow access to built images through the Docker CLI
140169
tags: stash-origin:latest
141170
target: stash-origin
@@ -155,13 +184,22 @@ jobs:
155184
run: echo "dtag=$(date +%Y%m%d-%H%M)" >> $GITHUB_OUTPUT
156185

157186
push-images:
158-
name: Push ${{ matrix.image }}:${{ matrix.osg_series }}-${{ matrix.repo }} image
187+
name: Push ${{ matrix.image }}:${{ matrix.osg_series.name }}-${{ matrix.repo }} image
159188
if: contains(fromJson('["push", "repository_dispatch", "workflow_dispatch"]'), github.event_name) && startsWith(github.repository, 'opensciencegrid/')
160189
strategy:
161190
matrix:
162191
image: [atlas-xcache, cms-xcache, stash-cache, stash-origin, xcache]
163192
repo: ['development', 'testing', 'release']
164-
osg_series: ['3.6']
193+
osg_series:
194+
- name: '3.6'
195+
os: 'el7'
196+
- name: '23'
197+
os: 'el9'
198+
# FIXME: disable OSG 23 dev until we have fixed the mash
199+
# cache + signed RPMs issue in the prod repo
200+
exclude:
201+
- repo: 'development'
202+
osg_series: {name: '23', os: 'el9'}
165203
needs: [make-date-tag, test-stash-cache]
166204
runs-on: ubuntu-latest
167205
steps:
@@ -171,13 +209,13 @@ jobs:
171209
uses: actions/cache@v3
172210
with:
173211
path: /tmp/.${{ matrix.image }}-buildx-cache
174-
key: ${{ matrix.image}}-${{ matrix.osg_series }}-${{ matrix.repo}}-build-${{ github.sha}}-${{ github.run_id }}
212+
key: ${{ matrix.image}}-${{ matrix.osg_series.name }}-${{ matrix.repo}}-build-${{ github.sha}}-${{ github.run_id }}
175213

176214
- name: Generate tag list
177215
id: generate-tag-list
178216
env:
179217
REPO: ${{ matrix.repo }}
180-
SERIES: ${{ matrix.osg_series }}
218+
SERIES: ${{ matrix.osg_series.name }}
181219
IMAGE: ${{ matrix.image }}
182220
TIMESTAMP: ${{ needs.make-date-tag.outputs.dtag }}
183221
run: |
@@ -216,7 +254,7 @@ jobs:
216254
push: True
217255
build-args: |
218256
BASE_YUM_REPO=${{ matrix.repo }}
219-
BASE_OSG_SERIES=${{ matrix.osg_series }}
257+
BASE_OSG_SERIES=${{ matrix.osg_series.name }}
220258
tags: "${{ steps.generate-tag-list.outputs.taglist }}"
221259
target: ${{ matrix.image }}
222260
cache-from: type=local,src=/tmp/.${{ matrix.image }}-buildx-cache

Dockerfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@
44

55
# Specify the base Yum repository to get the necessary RPMs
66
ARG BASE_YUM_REPO=testing
7-
ARG BASE_OSG_SERIES=3.6
7+
ARG BASE_OSG_SERIES=23
8+
ARG BASE_OS=el9
89

9-
FROM opensciencegrid/software-base:$BASE_OSG_SERIES-el7-$BASE_YUM_REPO AS xcache
10+
FROM opensciencegrid/software-base:$BASE_OSG_SERIES-$BASE_OS-$BASE_YUM_REPO AS xcache
1011
LABEL maintainer OSG Software <[email protected]>
1112

1213
# Previous arg has gone out of scope

0 commit comments

Comments
 (0)