17
17
18
18
jobs :
19
19
package :
20
+ name : " package (${{ matrix.platform }})"
20
21
strategy :
21
22
fail-fast : false
22
23
matrix :
23
24
platform :
24
25
- " ruby"
25
- - " x64-mingw32"
26
+ - " aarch64-linux-gnu"
27
+ - " aarch64-linux-musl"
28
+ - " arm64-darwin"
26
29
- " x64-mingw-ucrt"
30
+ - " x64-mingw32"
27
31
- " x86_64-darwin"
28
- - " arm64-darwin"
29
32
- " x86_64-linux-gnu"
30
33
- " x86_64-linux-musl"
31
- - " aarch64-linux-gnu"
32
- - " aarch64-linux-musl"
33
34
runs-on : ubuntu-latest
34
35
steps :
35
36
- uses : actions/checkout@v4
47
48
retention-days : 1
48
49
49
50
vanilla-install :
51
+ name : " install (ruby)"
50
52
needs : ["package"]
51
53
runs-on : ubuntu-latest
52
54
steps :
@@ -60,127 +62,52 @@ jobs:
60
62
- run : " gem install pkg/tailwindcss-ruby-*.gem"
61
63
- run : " tailwindcss 2>&1 | fgrep 'ERROR: Cannot find the tailwindcss executable'"
62
64
63
- linux-x86_64-gnu-install :
64
- needs : ["package"]
65
- runs-on : ubuntu-latest
66
- steps :
67
- - uses : ruby/setup-ruby@v1
68
- with :
69
- ruby-version : " 3.2"
70
- - uses : actions/download-artifact@v4
71
- with :
72
- name : gem-x86_64-linux-gnu
73
- path : pkg
74
- - run : " gem install pkg/tailwindcss-ruby-*.gem"
75
- - run : " tailwindcss --help"
76
-
77
- linux-x86_64-musl-install :
78
- needs : ["package"]
79
- runs-on : ubuntu-latest
80
- steps :
81
- - uses : actions/download-artifact@v4
82
- with :
83
- name : gem-x86_64-linux-musl
84
- path : pkg
85
- - run : |
86
- docker run --rm -v $PWD:/tailwindcss-ruby -w /tailwindcss-ruby \
87
- ruby:3.2-alpine \
88
- sh -c "
89
- apk add build-base
90
- gem install pkg/tailwindcss-ruby-*.gem
91
- tailwindcss --help
92
- "
93
-
94
- linux-aarch64-gnu-install :
95
- needs : ["package"]
96
- runs-on : ubuntu-latest
97
- steps :
98
- - uses : ruby/setup-ruby@v1
99
- with :
100
- ruby-version : " 3.2"
101
- - uses : actions/download-artifact@v4
102
- with :
103
- name : gem-aarch64-linux-gnu
104
- path : pkg
105
- - run : |
106
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
107
- docker run --rm -v $PWD:/tailwindcss-ruby -w /tailwindcss-ruby \
108
- --platform=linux/arm64/v8 ruby:3.2 \
109
- sh -c "
110
- gem install pkg/tailwindcss-ruby-*.gem
111
- tailwindcss --help
112
- "
113
-
114
- linux-aarch64-musl-install :
115
- needs : ["package"]
116
- runs-on : ubuntu-latest
65
+ install-matrix :
66
+ name : " install (${{ matrix.platform }})"
67
+ needs : [ "package" ]
68
+ strategy :
69
+ fail-fast : false
70
+ matrix :
71
+ ruby : [ "3.4" ]
72
+ platform :
73
+ - " aarch64-linux-gnu"
74
+ - " aarch64-linux-musl"
75
+ - " arm64-darwin"
76
+ - " x64-mingw-ucrt"
77
+ # - "x64-mingw32" # because it's on a different version of ruby, we just add it in an "include" below
78
+ - " x86_64-darwin"
79
+ - " x86_64-linux-gnu"
80
+ - " x86_64-linux-musl"
81
+ include :
82
+ - { platform: aarch64-linux-gnu, docker_platform: "--platform=linux/arm64/v8" }
83
+ - { platform: aarch64-linux-musl, docker_tag: "-alpine", docker_platform: "--platform=linux/arm64/v8", bootstrap: "apk add build-base &&" }
84
+ - { platform: arm64-darwin, runs_on: macos-14 }
85
+ - { platform: x64-mingw-ucrt, runs_on: windows-latest }
86
+ - { platform: x64-mingw32, runs_on: windows-latest, ruby: "3.0" }
87
+ - { platform: x86_64-darwin, runs_on: macos-13 }
88
+ - { platform: x86_64-linux-musl, docker_tag: "-alpine", bootstrap: "apk add build-base &&" }
89
+ runs-on : ${{ matrix.runs_on || 'ubuntu-latest' }}
117
90
steps :
118
91
- uses : actions/download-artifact@v4
119
92
with :
120
- name : gem-aarch64-linux-musl
93
+ name : gem-${{ matrix.platform }}
121
94
path : pkg
122
- - run : |
123
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
95
+ - if : ${{ matrix.runs_on }}
96
+ uses : ruby/setup-ruby@v1
97
+ with :
98
+ ruby-version : ${{ matrix.ruby }}
99
+ - if : ${{ matrix.runs_on }}
100
+ run : " gem install pkg/tailwindcss-ruby-*.gem"
101
+ - if : ${{ matrix.runs_on }}
102
+ run : " tailwindcss --help"
103
+ - if : ${{ (! matrix.runs_on) && matrix.docker_platform }}
104
+ run : docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
105
+ - if : ${{ ! matrix.runs_on }}
106
+ run : |
124
107
docker run --rm -v $PWD:/tailwindcss-ruby -w /tailwindcss-ruby \
125
- --platform=linux/arm64/v8 ruby:3.2-alpine \
108
+ ${{ matrix.docker_platform }} ruby:${{ matrix.ruby }}${{ matrix.docker_tag }} \
126
109
sh -c "
127
- apk add build-base
110
+ ${{ matrix.bootstrap }}
128
111
gem install pkg/tailwindcss-ruby-*.gem
129
112
tailwindcss --help
130
113
"
131
-
132
- darwin-x86_64-install :
133
- needs : ["package"]
134
- runs-on : macos-13
135
- steps :
136
- - uses : ruby/setup-ruby@v1
137
- with :
138
- ruby-version : " 3.2"
139
- - uses : actions/download-artifact@v4
140
- with :
141
- name : gem-x86_64-darwin
142
- path : pkg
143
- - run : " gem install pkg/tailwindcss-ruby-*.gem"
144
- - run : " tailwindcss --help"
145
-
146
- darwin-arm64-install :
147
- needs : ["package"]
148
- runs-on : macos-14
149
- steps :
150
- - uses : ruby/setup-ruby@v1
151
- with :
152
- ruby-version : " 3.2"
153
- - uses : actions/download-artifact@v4
154
- with :
155
- name : gem-arm64-darwin
156
- path : pkg
157
- - run : " gem install pkg/tailwindcss-ruby-*.gem"
158
- - run : " tailwindcss --help"
159
-
160
- windows-install :
161
- needs : ["package"]
162
- runs-on : windows-latest
163
- steps :
164
- - uses : ruby/setup-ruby@v1
165
- with :
166
- ruby-version : " 3.0"
167
- - uses : actions/download-artifact@v4
168
- with :
169
- name : gem-x64-mingw32
170
- path : pkg
171
- - run : " gem install pkg/tailwindcss-ruby-*.gem"
172
- - run : " tailwindcss --help"
173
-
174
- windows-ucrt-install :
175
- needs : ["package"]
176
- runs-on : windows-2022
177
- steps :
178
- - uses : ruby/setup-ruby@v1
179
- with :
180
- ruby-version : " 3.2"
181
- - uses : actions/download-artifact@v4
182
- with :
183
- name : gem-x64-mingw-ucrt
184
- path : pkg
185
- - run : " gem install pkg/tailwindcss-ruby-*.gem"
186
- - run : " tailwindcss --help"
0 commit comments