diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 5a0f929..7644158 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -17,34 +17,51 @@ jobs: - name: Install V run: | set -e + mkdir -p $HOME/.local/bin echo "Trying to download V from GitHub..." + mkdir -p /opt/v if curl -fsSL --connect-timeout 10 https://github.com/vlang/v/releases/latest/download/v_linux.zip -o /tmp/v.zip; then unzip -q /tmp/v.zip -d /opt/v - ln -s /opt/v/v /usr/local/bin/v + # V binary may be at /opt/v/v or /opt/v/v/v depending on zip structure + V_BIN=$(find /opt/v -name v -type f | head -1) + if [ -n "$V_BIN" ]; then + ln -sf "$V_BIN" /usr/local/bin/v 2>/dev/null || ln -sf "$V_BIN" $HOME/.local/bin/v + fi + export PATH="$HOME/.local/bin:$PATH" else echo "GitHub unreachable — installing V from source (no submodules)..." git clone --depth 1 --single-branch --recurse-submodules=no https://github.com/vlang/v /opt/v 2>/dev/null || true if [ -f /opt/v/v ]; then - ln -s /opt/v/v /usr/local/bin/v + ln -sf /opt/v/v $HOME/.local/bin/v else cd /opt/v && make without_tcc 2>/dev/null || make 2>/dev/null || true - ln -s /opt/v/v /usr/local/bin/v 2>/dev/null || true + ln -sf /opt/v/v $HOME/.local/bin/v 2>/dev/null || true fi + export PATH="$HOME/.local/bin:$PATH" fi + export PATH="$HOME/.local/bin:$PATH" echo "V version:" && v version - name: Build Linux x86_64 + env: + PATH: $HOME/.local/bin:/usr/local/bin:$PATH run: | mkdir -p build v -prod -os linux -arch amd64 -o build/ntfy-bridge-linux-x86_64 . - name: Build Linux arm64 (Raspberry Pi) + env: + PATH: $HOME/.local/bin:/usr/local/bin:$PATH run: v -prod -os linux -arch arm64 -o build/ntfy-bridge-linux-arm64 . - name: Build Windows x86_64 + env: + PATH: $HOME/.local/bin:/usr/local/bin:$PATH run: v -prod -os windows -arch amd64 -o build/ntfy-bridge-windows-x86_64.exe . - name: Test + env: + PATH: $HOME/.local/bin:/usr/local/bin:$PATH run: v test . - name: Upload artifacts