10
10
schedule :
11
11
- cron : ' 48 23 * * 6'
12
12
13
+ env :
14
+ FEDORA_VERSION : 34
15
+
13
16
jobs :
14
17
build-and-push :
15
18
name : Build, test and push
38
41
context : .
39
42
platforms : linux/${{ matrix.arch }}
40
43
load : true
41
- tags : fedorapython/fedora-python-tox:${{ matrix.arch }}
44
+ tags : |
45
+ fedorapython/fedora-python-tox:${{ matrix.arch }}
46
+ fedorapython/fedora-python-tox:${{ matrix.arch }}-f${{ env.FEDORA_VERSION }}
42
47
- name : Test local project
43
48
env :
44
49
TOXENV : ${{ matrix.toxenv }}
@@ -72,10 +77,12 @@ jobs:
72
77
context : .
73
78
platforms : linux/${{ matrix.arch }}
74
79
push : true
75
- tags : fedorapython/fedora-python-tox:${{ matrix.arch }}
80
+ tags : |
81
+ fedorapython/fedora-python-tox:${{ matrix.arch }}
82
+ fedorapython/fedora-python-tox:${{ matrix.arch }}-f${{ env.FEDORA_VERSION }}
76
83
77
84
release :
78
- name : ' Update and test the :latest manifest '
85
+ name : ' Update and test manifests '
79
86
if : github.event_name == 'push' || github.event_name == 'schedule'
80
87
needs : build-and-push
81
88
runs-on : ubuntu-latest
89
96
run : >
90
97
for arch in amd64 arm64 ppc64le s390x; do
91
98
docker pull fedorapython/fedora-python-tox:$arch;
99
+ docker pull fedorapython/fedora-python-tox:${arch}-f${{ env.FEDORA_VERSION }};
92
100
done
93
101
- name : Create and push manifest for the :latest tag
94
102
env :
@@ -103,3 +111,16 @@ jobs:
103
111
- name : Test the latest manifest
104
112
run : |
105
113
docker manifest inspect fedorapython/fedora-python-tox:latest | grep '"architecture":' | grep -Ez '(.*(amd64|arm64|ppc64le|s390x).*){4}'
114
+ - name : Create and push manifest for the versioned tag
115
+ env :
116
+ DOCKER_CLI_EXPERIMENTAL : enabled
117
+ run : >
118
+ docker manifest create fedorapython/fedora-python-tox:f${{ env.FEDORA_VERSION }}
119
+ fedorapython/fedora-python-tox:amd64-f${{ env.FEDORA_VERSION }}
120
+ fedorapython/fedora-python-tox:arm64-f${{ env.FEDORA_VERSION }}
121
+ fedorapython/fedora-python-tox:ppc64le-f${{ env.FEDORA_VERSION }}
122
+ fedorapython/fedora-python-tox:s390x-f${{ env.FEDORA_VERSION }};
123
+ docker manifest push fedorapython/fedora-python-tox:f${{ env.FEDORA_VERSION }};
124
+ - name : Test the versioned manifest
125
+ run : |
126
+ docker manifest inspect fedorapython/fedora-python-tox:f${{ env.FEDORA_VERSION }} | grep '"architecture":' | grep -Ez '(.*(amd64|arm64|ppc64le|s390x).*){4}'
0 commit comments