|
4 | 4 | schedule: |
5 | 5 | - cron: '0 */12 * * *' |
6 | 6 |
|
7 | | - workflow_dispatch: |
8 | | - inputs: |
9 | | - ubuntu_version: |
10 | | - required: false |
11 | | - default: jammy |
12 | | - |
13 | 7 | env: |
14 | 8 | DOCKER_USER: ${{ secrets.DOCKER_USER }} |
15 | 9 | DOCKER_PASS: ${{ secrets.DOCKER_PASS }} |
16 | 10 | GHCR_USER: ${{ secrets.GHCR_USER }} |
17 | 11 | GHCR_ACCESS_TOKEN: ${{ secrets.GHCR_ACCESS_TOKEN }} |
18 | 12 |
|
19 | 13 | jobs: |
20 | | - build_jammy: |
| 14 | + build: |
| 15 | + strategy: |
| 16 | + matrix: |
| 17 | + os: [jammy, focal] |
| 18 | + debug: ['', '-debug'] |
| 19 | + dev: ['', '-dev'] |
21 | 20 |
|
22 | 21 | runs-on: ubuntu-latest |
23 | 22 |
|
24 | 23 | env: |
25 | 24 | nightly: true |
26 | 25 | push: true |
27 | | - ubuntu_version: jammy |
| 26 | + ubuntu_version: ${{ matrix.os }} |
28 | 27 | ruby_version: master |
29 | | - executor: amd64 |
30 | | - image_version_suffix: '' |
| 28 | + image_version_suffix: ${{ matrix.debug }} |
31 | 29 | tag_suffix: '' |
32 | 30 | push_tags: '' |
33 | | - dev_suffix: "-dev" |
34 | | - only_development: true |
| 31 | + dev_suffix: ${{ matrix.dev }} |
35 | 32 | optflags: '' |
36 | 33 | cppflags: '' |
37 | 34 | debugflags: '' |
38 | 35 |
|
39 | 36 | steps: |
40 | 37 | - uses: actions/checkout@v4.1.0 |
41 | 38 |
|
42 | | - - uses: "./.github/actions/build_image" |
43 | | - if: "!${{ env.only_development }}" |
44 | | - with: |
45 | | - ruby_version: "${{ env.ruby_version }}" |
46 | | - nightly: "${{ env.nightly }}" |
47 | | - image_version_suffix: "${{ env.image_version_suffix }}" |
48 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
49 | | - tag_suffix: "${{ env.tag_suffix }}" |
50 | | - |
51 | | - - uses: "./.github/actions/push_image" |
52 | | - if: "${{ env.push }}" |
53 | | - with: |
54 | | - ruby_version: "${{ env.ruby_version }}" |
55 | | - nightly: "${{ env.nightly }}" |
56 | | - image_version_suffix: "${{ env.image_version_suffix }}" |
57 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
58 | | - tag_suffix: "${{ env.tag_suffix }}" |
59 | | - |
60 | | - - uses: "./.github/actions/build_image" |
61 | | - with: |
62 | | - ruby_version: "${{ env.ruby_version }}" |
63 | | - nightly: "${{ env.nightly }}" |
64 | | - image_version_suffix: "${{ env.image_version_suffix }}${{ env.dev_suffix }}" |
65 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
66 | | - tag_suffix: "${{ env.tag_suffix }}" |
67 | | - target: development |
68 | | - |
69 | | - - uses: "./.github/actions/push_image" |
70 | | - if: "${{ env.push }}" |
71 | | - with: |
72 | | - ruby_version: "${{ env.ruby_version }}" |
73 | | - nightly: "${{ env.nightly }}" |
74 | | - image_version_suffix: "${{ env.image_version_suffix }}${{ env.dev_suffix }}" |
75 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
76 | | - tag_suffix: "${{ env.tag_suffix }}" |
77 | | - |
78 | | - - uses: "./.github/actions/push_image_by_tag" |
79 | | - if: "${{ env.push_tags }}" |
80 | | - with: |
81 | | - push_tags: "${{ env.push_tags }}" |
82 | | - |
83 | | - build_focal: |
84 | | - |
85 | | - runs-on: ubuntu-latest |
86 | | - |
87 | | - env: |
88 | | - nightly: true |
89 | | - push: true |
90 | | - ubuntu_version: focal |
91 | | - ruby_version: master |
92 | | - executor: amd64 |
93 | | - image_version_suffix: '' |
94 | | - tag_suffix: '' |
95 | | - push_tags: '' |
96 | | - dev_suffix: "-dev" |
97 | | - only_development: true |
98 | | - optflags: '' |
99 | | - cppflags: '' |
100 | | - debugflags: '' |
101 | | - |
102 | | - steps: |
103 | | - - uses: actions/checkout@v4.1.0 |
104 | | - |
105 | | - - uses: "./.github/actions/build_image" |
106 | | - if: "!${{ env.only_development }}" |
107 | | - with: |
108 | | - ruby_version: "${{ env.ruby_version }}" |
109 | | - nightly: "${{ env.nightly }}" |
110 | | - image_version_suffix: "${{ env.image_version_suffix }}" |
111 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
112 | | - tag_suffix: "${{ env.tag_suffix }}" |
113 | | - |
114 | | - - uses: "./.github/actions/push_image" |
115 | | - if: "${{ env.push }}" |
116 | | - with: |
117 | | - ruby_version: "${{ env.ruby_version }}" |
118 | | - nightly: "${{ env.nightly }}" |
119 | | - image_version_suffix: "${{ env.image_version_suffix }}" |
120 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
121 | | - tag_suffix: "${{ env.tag_suffix }}" |
122 | | - |
123 | | - - uses: "./.github/actions/build_image" |
124 | | - with: |
125 | | - ruby_version: "${{ env.ruby_version }}" |
126 | | - nightly: "${{ env.nightly }}" |
127 | | - image_version_suffix: "${{ env.image_version_suffix }}${{ env.dev_suffix }}" |
128 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
129 | | - tag_suffix: "${{ env.tag_suffix }}" |
130 | | - target: development |
131 | | - |
132 | | - - uses: "./.github/actions/push_image" |
133 | | - if: "${{ env.push }}" |
134 | | - with: |
135 | | - ruby_version: "${{ env.ruby_version }}" |
136 | | - nightly: "${{ env.nightly }}" |
137 | | - image_version_suffix: "${{ env.image_version_suffix }}${{ env.dev_suffix }}" |
138 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
139 | | - tag_suffix: "${{ env.tag_suffix }}" |
140 | | - |
141 | | - - uses: "./.github/actions/push_image_by_tag" |
142 | | - if: "${{ env.push_tags }}" |
143 | | - with: |
144 | | - push_tags: "${{ env.push_tags }}" |
145 | | - |
146 | | - build_debug_jammy: |
147 | | - if: "'nightly' == '${{ inputs.ruby_version }}'" |
148 | | - |
149 | | - runs-on: ubuntu-latest |
150 | | - |
151 | | - env: |
152 | | - nightly: true |
153 | | - push: true |
154 | | - ubuntu_version: jammy |
155 | | - ruby_version: master |
156 | | - executor: amd64 |
157 | | - image_version_suffix: "-debug" |
158 | | - tag_suffix: '' |
159 | | - push_tags: '' |
160 | | - dev_suffix: "-dev" |
161 | | - only_development: true |
162 | | - optflags: '' |
163 | | - cppflags: '' |
164 | | - debugflags: '' |
165 | | - |
166 | | - steps: |
167 | | - - uses: actions/checkout@v4.1.0 |
168 | | - |
169 | | - - uses: "./.github/actions/build_image" |
170 | | - if: "!${{ env.only_development }}" |
171 | | - with: |
172 | | - ruby_version: "${{ env.ruby_version }}" |
173 | | - nightly: "${{ env.nightly }}" |
174 | | - image_version_suffix: "${{ env.image_version_suffix }}" |
175 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
176 | | - tag_suffix: "${{ env.tag_suffix }}" |
177 | | - |
178 | | - - uses: "./.github/actions/push_image" |
179 | | - if: "${{ env.push }}" |
180 | | - with: |
181 | | - ruby_version: "${{ env.ruby_version }}" |
182 | | - nightly: "${{ env.nightly }}" |
183 | | - image_version_suffix: "${{ env.image_version_suffix }}" |
184 | | - ubuntu_version: "${{ env.ubuntu_version }}" |
185 | | - tag_suffix: "${{ env.tag_suffix }}" |
| 39 | + - run: | |
| 40 | + if [ ${{ env.tag_suffix }} = "-dev" ]; then |
| 41 | + echo "target=development" >> $GITHUB_ENV |
| 42 | + else |
| 43 | + echo "target=ruby" >> $GITHUB_ENV |
| 44 | + fi |
186 | 45 |
|
187 | 46 | - uses: "./.github/actions/build_image" |
188 | 47 | with: |
|
191 | 50 | image_version_suffix: "${{ env.image_version_suffix }}${{ env.dev_suffix }}" |
192 | 51 | ubuntu_version: "${{ env.ubuntu_version }}" |
193 | 52 | tag_suffix: "${{ env.tag_suffix }}" |
194 | | - target: development |
| 53 | + target: ${{ env.target }} |
195 | 54 |
|
196 | 55 | - uses: "./.github/actions/push_image" |
197 | 56 | if: "${{ env.push }}" |
|
0 commit comments