Skip to content

Commit 69e246c

Browse files
committed
Simplify release workflow: Windows binaries only
1 parent 91c08f0 commit 69e246c

File tree

1 file changed

+18
-75
lines changed

1 file changed

+18
-75
lines changed

.github/workflows/release.yml

Lines changed: 18 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -8,29 +8,8 @@ on:
88

99
jobs:
1010
release:
11-
name: Release ${{ matrix.target }}
12-
runs-on: ${{ matrix.os }}
13-
strategy:
14-
matrix:
15-
include:
16-
- target: x86_64-pc-windows-msvc
17-
os: windows-latest
18-
ext: .exe
19-
- target: x86_64-unknown-linux-gnu
20-
os: ubuntu-latest
21-
ext: ""
22-
- target: x86_64-unknown-linux-musl
23-
os: ubuntu-latest
24-
ext: ""
25-
- target: aarch64-unknown-linux-gnu
26-
os: ubuntu-latest
27-
ext: ""
28-
- target: x86_64-apple-darwin
29-
os: macos-latest
30-
ext: ""
31-
- target: aarch64-apple-darwin
32-
os: macos-latest
33-
ext: ""
11+
name: Release Windows Binaries
12+
runs-on: windows-latest
3413

3514
steps:
3615
- uses: actions/checkout@v4
@@ -39,64 +18,33 @@ jobs:
3918
uses: actions-rs/toolchain@v1
4019
with:
4120
toolchain: stable
42-
target: ${{ matrix.target }}
21+
target: x86_64-pc-windows-msvc
4322
override: true
4423

45-
- name: Install dependencies (Linux)
46-
if: matrix.os == 'ubuntu-latest'
24+
- name: Build binaries
4725
run: |
48-
sudo apt-get update
49-
sudo apt-get install -y pkg-config libssl-dev
50-
51-
- name: Install cross (for cross-compilation)
52-
if: matrix.target == 'x86_64-unknown-linux-musl' || matrix.target == 'aarch64-unknown-linux-gnu'
53-
run: cargo install cross --git https://github.com/cross-rs/cross
54-
55-
- name: Build binaries (native)
56-
if: matrix.target == 'x86_64-pc-windows-msvc' || matrix.target == 'x86_64-unknown-linux-gnu' || matrix.target == 'x86_64-apple-darwin' || matrix.target == 'aarch64-apple-darwin'
57-
run: |
58-
cargo build --release --target ${{ matrix.target }} --bin nag
59-
cargo build --release --target ${{ matrix.target }} --bin nagari-lsp || echo "nagari-lsp build failed"
60-
cargo build --release --target ${{ matrix.target }} --bin nagari-registry || echo "nagari-registry build failed"
61-
cargo build --release --target ${{ matrix.target }} --bin nagc || echo "nagc build failed"
62-
cargo build --release --target ${{ matrix.target }} --bin nagrun || echo "nagrun build failed"
63-
64-
- name: Build binaries (cross)
65-
if: matrix.target == 'x86_64-unknown-linux-musl' || matrix.target == 'aarch64-unknown-linux-gnu'
66-
run: |
67-
cross build --release --target ${{ matrix.target }} --bin nag
68-
cross build --release --target ${{ matrix.target }} --bin nagari-lsp || echo "nagari-lsp build failed"
69-
cross build --release --target ${{ matrix.target }} --bin nagari-registry || echo "nagari-registry build failed"
70-
cross build --release --target ${{ matrix.target }} --bin nagc || echo "nagc build failed"
71-
cross build --release --target ${{ matrix.target }} --bin nagrun || echo "nagrun build failed"
26+
cargo build --release --target x86_64-pc-windows-msvc --bin nag
27+
cargo build --release --target x86_64-pc-windows-msvc --bin nagari-lsp || echo "nagari-lsp build failed"
28+
cargo build --release --target x86_64-pc-windows-msvc --bin nagari-registry || echo "nagari-registry build failed"
29+
cargo build --release --target x86_64-pc-windows-msvc --bin nagc || echo "nagc build failed"
30+
cargo build --release --target x86_64-pc-windows-msvc --bin nagrun || echo "nagrun build failed"
7231
7332
- name: Create release directory
74-
run: mkdir -p release
33+
run: mkdir release
7534

76-
- name: Package binaries (Windows)
77-
if: matrix.os == 'windows-latest'
35+
- name: Package binaries
7836
shell: cmd
7937
run: |
80-
copy "target\${{ matrix.target }}\release\nag.exe" "release\nag-${{ matrix.target }}.exe" 2>nul || echo nag not found
81-
copy "target\${{ matrix.target }}\release\nagari-lsp.exe" "release\nagari-lsp-${{ matrix.target }}.exe" 2>nul || echo nagari-lsp not found
82-
copy "target\${{ matrix.target }}\release\nagari-registry.exe" "release\nagari-registry-${{ matrix.target }}.exe" 2>nul || echo nagari-registry not found
83-
copy "target\${{ matrix.target }}\release\nagc.exe" "release\nagc-${{ matrix.target }}.exe" 2>nul || echo nagc not found
84-
copy "target\${{ matrix.target }}\release\nagrun.exe" "release\nagrun-${{ matrix.target }}.exe" 2>nul || echo nagrun not found
85-
86-
- name: Package binaries (Unix)
87-
if: matrix.os != 'windows-latest'
88-
run: |
89-
cp target/${{ matrix.target }}/release/nag release/nag-${{ matrix.target }} 2>/dev/null || echo "nag not found"
90-
cp target/${{ matrix.target }}/release/nagari-lsp release/nagari-lsp-${{ matrix.target }} 2>/dev/null || echo "nagari-lsp not found"
91-
cp target/${{ matrix.target }}/release/nagari-registry release/nagari-registry-${{ matrix.target }} 2>/dev/null || echo "nagari-registry not found"
92-
cp target/${{ matrix.target }}/release/nagc release/nagc-${{ matrix.target }} 2>/dev/null || echo "nagc not found"
93-
cp target/${{ matrix.target }}/release/nagrun release/nagrun-${{ matrix.target }} 2>/dev/null || echo "nagrun not found"
94-
chmod +x release/* 2>/dev/null || true
38+
copy "target\x86_64-pc-windows-msvc\release\nag.exe" "release\nag-windows.exe" 2>nul || echo nag not found
39+
copy "target\x86_64-pc-windows-msvc\release\nagari-lsp.exe" "release\nagari-lsp-windows.exe" 2>nul || echo nagari-lsp not found
40+
copy "target\x86_64-pc-windows-msvc\release\nagari-registry.exe" "release\nagari-registry-windows.exe" 2>nul || echo nagari-registry not found
41+
copy "target\x86_64-pc-windows-msvc\release\nagc.exe" "release\nagc-windows.exe" 2>nul || echo nagc not found
42+
copy "target\x86_64-pc-windows-msvc\release\nagrun.exe" "release\nagrun-windows.exe" 2>nul || echo nagrun not found
9543
9644
- name: Upload artifacts
9745
uses: actions/upload-artifact@v4
9846
with:
99-
name: nagari-binaries-${{ matrix.target }}
47+
name: nagari-windows-binaries
10048
path: release/
10149

10250
create-release:
@@ -112,12 +60,7 @@ jobs:
11260
- name: Create release
11361
uses: softprops/action-gh-release@v1
11462
with:
115-
files: |
116-
nagari-binaries-*/nag-*
117-
nagari-binaries-*/nagari-lsp-*
118-
nagari-binaries-*/nagari-registry-*
119-
nagari-binaries-*/nagc-*
120-
nagari-binaries-*/nagrun-*
63+
files: nagari-windows-binaries/*
12164
draft: false
12265
prerelease: false
12366
generate_release_notes: true

0 commit comments

Comments
 (0)