Skip to content

Commit 6ecf251

Browse files
release.yml: fix workflow
1 parent 6d709c4 commit 6ecf251

File tree

1 file changed

+27
-5
lines changed

1 file changed

+27
-5
lines changed

.github/workflows/release.yml

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,24 @@ jobs:
2626
- name: Checkout
2727
uses: actions/checkout@v4
2828

29+
# Determine where the CMake project root is.
30+
# Some repo layouts have CMakeLists.txt at the repository root,
31+
# others keep the project under ./easy-stun.
32+
- name: Detect project root
33+
shell: bash
34+
run: |
35+
set -euo pipefail
36+
if [ -f CMakeLists.txt ]; then
37+
echo "PROJECT_DIR=." >> "$GITHUB_ENV"
38+
elif [ -f easy-stun/CMakeLists.txt ]; then
39+
echo "PROJECT_DIR=easy-stun" >> "$GITHUB_ENV"
40+
else
41+
echo "Could not find CMakeLists.txt in '.' or './easy-stun'" >&2
42+
ls -la
43+
exit 1
44+
fi
45+
echo "Detected PROJECT_DIR=$PROJECT_DIR"
46+
2947
- name: Install dependencies (Ubuntu)
3048
if: runner.os == 'Linux'
3149
run: |
@@ -41,26 +59,30 @@ jobs:
4159
4260
- name: Configure (Ubuntu)
4361
if: runner.os == 'Linux'
62+
working-directory: ${{ env.PROJECT_DIR }}
4463
run: |
45-
cmake -S easy-stun -B easy-stun/build -G Ninja -DCMAKE_BUILD_TYPE=Release
64+
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
4665
4766
- name: Configure (macOS)
4867
if: runner.os == 'macOS'
68+
working-directory: ${{ env.PROJECT_DIR }}
4969
env:
5070
OPENSSL_ROOT_DIR: /opt/homebrew/opt/openssl@3
5171
PKG_CONFIG_PATH: /opt/homebrew/opt/openssl@3/lib/pkgconfig
5272
run: |
53-
cmake -S easy-stun -B easy-stun/build -G Ninja -DCMAKE_BUILD_TYPE=Release
73+
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
5474
5575
- name: Build
76+
working-directory: ${{ env.PROJECT_DIR }}
5677
run: |
57-
cmake --build easy-stun/build
78+
cmake --build build
5879
5980
- name: Package artifact
81+
working-directory: ${{ env.PROJECT_DIR }}
6082
shell: bash
6183
run: |
6284
set -euo pipefail
63-
BIN="easy-stun/build/easy-stun"
85+
BIN="build/easy-stun"
6486
test -f "$BIN"
6587
6688
OS="${{ runner.os }}"
@@ -72,7 +94,7 @@ jobs:
7294
cp "$BIN" "$OUTDIR/easy-stun"
7395
(cd "$OUTDIR" && tar -czf "${NAME}.tar.gz" easy-stun)
7496
75-
echo "ASSET_PATH=$OUTDIR/${NAME}.tar.gz" >> "$GITHUB_ENV"
97+
echo "ASSET_PATH=${{ env.PROJECT_DIR }}/$OUTDIR/${NAME}.tar.gz" >> "$GITHUB_ENV"
7698
echo "ASSET_NAME=${NAME}.tar.gz" >> "$GITHUB_ENV"
7799
78100
- name: Upload build artifact (non-tag)

0 commit comments

Comments
 (0)