Skip to content

Commit 82309ca

Browse files
committed
Merge branch 'hipo-orderings-bb' into hipo-cpack
2 parents 8e31a44 + 1acdba2 commit 82309ca

File tree

1 file changed

+239
-0
lines changed

1 file changed

+239
-0
lines changed

.github/workflows/release.yml

Lines changed: 239 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,239 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
# Sequence of patterns matched against refs/tags
6+
tags:
7+
- 'v*' # Push events to matching v*, i.e. v1.0, v2023.11.15
8+
9+
jobs:
10+
build-linux-x64:
11+
name: HiGHS -- Linux (x86_64) -- Release ${{ github.ref_name }}
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Checkout Uno
15+
uses: actions/checkout@v4
16+
17+
- name: Install Julia
18+
uses: julia-actions/setup-julia@v2
19+
with:
20+
version: "1.7"
21+
arch: x64
22+
23+
- name: Set the environment variables BINARYBUILDER_AUTOMATIC_APPLE, UNO_RELEASE, UNO_COMMIT
24+
shell: bash
25+
run: |
26+
echo "BINARYBUILDER_AUTOMATIC_APPLE=true" >> $GITHUB_ENV
27+
echo "UNO_RELEASE=${{ github.ref_name }}" >> $GITHUB_ENV
28+
echo "UNO_COMMIT=${{ github.sha }}" >> $GITHUB_ENV
29+
echo "UNO_URL=https://github.com/${{ github.repository }}.git" >> $GITHUB_ENV
30+
31+
- name: Cross-compilation of HiGHS -- x86_64-linux-gnu-cxx11
32+
run: |
33+
julia --color=yes -e 'using Pkg; Pkg.add("BinaryBuilder")'
34+
julia --color=yes .github/julia/build_tarballs_release.jl x86_64-linux-gnu-cxx11 --verbose
35+
36+
- name: Archive artifact
37+
run: julia --color=yes .github/julia/generate_binaries.jl
38+
39+
- name: Upload artifact
40+
uses: actions/upload-artifact@v4
41+
with:
42+
name: Uno_binaries.${{ github.ref_name }}.x86_64-linux-gnu-cxx11.tar.gz
43+
path: ./Uno_binaries.${{ github.ref_name }}.x86_64-linux-gnu-cxx11.tar.gz
44+
45+
build-linux-aarch64:
46+
name: HiGHS -- Linux (aarch64) -- Release ${{ github.ref_name }}
47+
runs-on: ubuntu-latest
48+
steps:
49+
- name: Checkout Uno
50+
uses: actions/checkout@v4
51+
52+
- name: Install Julia
53+
uses: julia-actions/setup-julia@v2
54+
with:
55+
version: "1.7"
56+
arch: x64
57+
58+
- name: Set the environment variables BINARYBUILDER_AUTOMATIC_APPLE, UNO_RELEASE, UNO_COMMIT
59+
shell: bash
60+
run: |
61+
echo "BINARYBUILDER_AUTOMATIC_APPLE=true" >> $GITHUB_ENV
62+
echo "UNO_RELEASE=${{ github.ref_name }}" >> $GITHUB_ENV
63+
echo "UNO_COMMIT=${{ github.sha }}" >> $GITHUB_ENV
64+
echo "UNO_URL=https://github.com/${{ github.repository }}.git" >> $GITHUB_ENV
65+
66+
- name: Cross-compilation of HiGHS -- aarch64-linux-gnu-cxx11
67+
run: |
68+
julia --color=yes -e 'using Pkg; Pkg.add("BinaryBuilder")'
69+
julia --color=yes .github/julia/build_tarballs_release.jl aarch64-linux-gnu-cxx11 --verbose
70+
71+
- name: Archive artifact
72+
run: julia --color=yes .github/julia/generate_binaries.jl
73+
74+
- name: Upload artifact
75+
uses: actions/upload-artifact@v4
76+
with:
77+
name: Uno_binaries.${{ github.ref_name }}.aarch64-linux-gnu-cxx11.tar.gz
78+
path: ./Uno_binaries.${{ github.ref_name }}.aarch64-linux-gnu-cxx11.tar.gz
79+
80+
build-windows-x64:
81+
name: HiGHS -- Windows (x86_64) -- Release ${{ github.ref_name }}
82+
runs-on: ubuntu-latest
83+
steps:
84+
- name: Checkout Uno
85+
uses: actions/checkout@v4
86+
87+
- name: Install Julia
88+
uses: julia-actions/setup-julia@v2
89+
with:
90+
version: "1.7"
91+
arch: x64
92+
93+
- name: Set the environment variables BINARYBUILDER_AUTOMATIC_APPLE, UNO_RELEASE, UNO_COMMIT
94+
shell: bash
95+
run: |
96+
echo "BINARYBUILDER_AUTOMATIC_APPLE=true" >> $GITHUB_ENV
97+
echo "UNO_RELEASE=${{ github.ref_name }}" >> $GITHUB_ENV
98+
echo "UNO_COMMIT=${{ github.sha }}" >> $GITHUB_ENV
99+
echo "UNO_URL=https://github.com/${{ github.repository }}.git" >> $GITHUB_ENV
100+
101+
- name: Cross-compilation of HiGHS -- x86_64-w64-mingw32-cxx11
102+
run: |
103+
julia --color=yes -e 'using Pkg; Pkg.add("BinaryBuilder")'
104+
julia --color=yes .github/julia/build_tarballs_release.jl x86_64-w64-mingw32-cxx11 --verbose
105+
- name: Archive artifact
106+
run: julia --color=yes .github/julia/generate_binaries.jl
107+
108+
- name: Upload artifact
109+
uses: actions/upload-artifact@v4
110+
with:
111+
name: Uno_binaries.${{ github.ref_name }}.x86_64-w64-mingw32-cxx11.zip
112+
path: ./Uno_binaries.${{ github.ref_name }}.x86_64-w64-mingw32-cxx11.zip
113+
114+
build-mac-x64:
115+
name: HiGHS -- macOS (x86_64) -- Release ${{ github.ref_name }}
116+
runs-on: ubuntu-latest
117+
steps:
118+
- name: Checkout Uno
119+
uses: actions/checkout@v4
120+
121+
- name: Install Julia
122+
uses: julia-actions/setup-julia@v2
123+
with:
124+
version: "1.7"
125+
arch: x64
126+
127+
- name: Set the environment variables BINARYBUILDER_AUTOMATIC_APPLE, UNO_RELEASE, UNO_COMMIT
128+
shell: bash
129+
run: |
130+
echo "BINARYBUILDER_AUTOMATIC_APPLE=true" >> $GITHUB_ENV
131+
echo "UNO_RELEASE=${{ github.ref_name }}" >> $GITHUB_ENV
132+
echo "UNO_COMMIT=${{ github.sha }}" >> $GITHUB_ENV
133+
echo "UNO_URL=https://github.com/${{ github.repository }}.git" >> $GITHUB_ENV
134+
135+
- name: Cross-compilation of HiGHS -- x86_64-apple-darwin-cxx11
136+
run: |
137+
julia --color=yes -e 'using Pkg; Pkg.add("BinaryBuilder")'
138+
julia --color=yes .github/julia/build_tarballs_release.jl x86_64-apple-darwin-cxx11 --verbose
139+
140+
- name: Archive artifact
141+
run: julia --color=yes .github/julia/generate_binaries.jl
142+
143+
- name: Upload artifact
144+
uses: actions/upload-artifact@v4
145+
with:
146+
name: Uno_binaries.${{ github.ref_name }}.x86_64-apple-darwin-cxx11.tar.gz
147+
path: ./Uno_binaries.${{ github.ref_name }}.x86_64-apple-darwin-cxx11.tar.gz
148+
149+
build-mac-aarch64:
150+
name: HiGHS -- macOS (aarch64) -- Release ${{ github.ref_name }}
151+
runs-on: ubuntu-latest
152+
steps:
153+
- name: Checkout Uno
154+
uses: actions/checkout@v4
155+
156+
- name: Install Julia
157+
uses: julia-actions/setup-julia@v2
158+
with:
159+
version: "1.7"
160+
arch: x64
161+
162+
- name: Set the environment variables BINARYBUILDER_AUTOMATIC_APPLE, UNO_RELEASE, UNO_COMMIT
163+
shell: bash
164+
run: |
165+
echo "BINARYBUILDER_AUTOMATIC_APPLE=true" >> $GITHUB_ENV
166+
echo "UNO_RELEASE=${{ github.ref_name }}" >> $GITHUB_ENV
167+
echo "UNO_COMMIT=${{ github.sha }}" >> $GITHUB_ENV
168+
echo "UNO_URL=https://github.com/${{ github.repository }}.git" >> $GITHUB_ENV
169+
170+
- name: Cross-compilation of HiGHS -- aarch64-apple-darwin-cxx11
171+
run: |
172+
julia --color=yes -e 'using Pkg; Pkg.add("BinaryBuilder")'
173+
julia --color=yes .github/julia/build_tarballs_release.jl aarch64-apple-darwin-cxx11 --verbose
174+
175+
- name: Archive artifact
176+
run: julia --color=yes .github/julia/generate_binaries.jl
177+
178+
- name: Upload artifact
179+
uses: actions/upload-artifact@v4
180+
with:
181+
name: Uno_binaries.${{ github.ref_name }}.aarch64-apple-darwin-cxx11.tar.gz
182+
path: ./Uno_binaries.${{ github.ref_name }}.aarch64-apple-darwin-cxx11.tar.gz
183+
184+
release:
185+
name: Create Release and Upload Binaries
186+
needs: [build-windows-x64, build-linux-x64, build-linux-aarch64, build-mac-x64, build-mac-aarch64]
187+
runs-on: ubuntu-latest
188+
steps:
189+
- name: Checkout Uno
190+
uses: actions/checkout@v4
191+
192+
- name: Download artifacts
193+
uses: actions/download-artifact@v4
194+
with:
195+
path: .
196+
197+
- name: Create GitHub Release
198+
run: |
199+
gh release create ${{ github.ref_name }} \
200+
--title "${{ github.ref_name }}" \
201+
--notes "" \
202+
--verify-tag
203+
env:
204+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
205+
206+
- name: Upload Linux (x86_64) artifact
207+
run: |
208+
gh release upload ${{ github.ref_name }} \
209+
Uno_binaries.${{ github.ref_name }}.x86_64-linux-gnu-cxx11.tar.gz/Uno_binaries.${{ github.ref_name }}.x86_64-linux-gnu-cxx11.tar.gz#Uno.${{ github.ref_name }}.linux.x86_64.tar.gz
210+
env:
211+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
212+
213+
- name: Upload Linux (aarch64) artifact
214+
run: |
215+
gh release upload ${{ github.ref_name }} \
216+
Uno_binaries.${{ github.ref_name }}.aarch64-linux-gnu-cxx11.tar.gz/Uno_binaries.${{ github.ref_name }}.aarch64-linux-gnu-cxx11.tar.gz#Uno.${{ github.ref_name }}.linux.aarch64.tar.gz
217+
env:
218+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
219+
220+
- name: Upload Mac (x86_64) artifact
221+
run: |
222+
gh release upload ${{ github.ref_name }} \
223+
Uno_binaries.${{ github.ref_name }}.x86_64-apple-darwin-cxx11.tar.gz/Uno_binaries.${{ github.ref_name }}.x86_64-apple-darwin-cxx11.tar.gz#Uno.${{ github.ref_name }}.mac.x86_64.tar.gz
224+
env:
225+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
226+
227+
- name: Upload Mac (aarch64) artifact
228+
run: |
229+
gh release upload ${{ github.ref_name }} \
230+
Uno_binaries.${{ github.ref_name }}.aarch64-apple-darwin-cxx11.tar.gz/Uno_binaries.${{ github.ref_name }}.aarch64-apple-darwin-cxx11.tar.gz#Uno.${{ github.ref_name }}.mac.aarch64.tar.gz
231+
env:
232+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
233+
234+
- name: Upload Windows (x86_64) artifact
235+
run: |
236+
gh release upload ${{ github.ref_name }} \
237+
Uno_binaries.${{ github.ref_name }}.x86_64-w64-mingw32-cxx11.zip/Uno_binaries.${{ github.ref_name }}.x86_64-w64-mingw32-cxx11.zip#Uno.${{ github.ref_name }}.windows.x86_64.zip
238+
env:
239+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)