From 729718cb09fe7d93338380ca7e1ed7905497cb6c Mon Sep 17 00:00:00 2001 From: Umut Hope YILDIRIM Date: Fri, 8 Nov 2024 17:49:37 -0500 Subject: [PATCH] fix: arm64 runner proto already installed bug (#1810) https://github.com/lancedb/lancedb/actions/runs/11748512661/job/32732745458 --- .github/workflows/npm-publish.yml | 22 ++++++++++++++++++++-- .github/workflows/rust.yml | 18 ++++++++++++++++-- 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/.github/workflows/npm-publish.yml b/.github/workflows/npm-publish.yml index 0360b19f..db7b6d08 100644 --- a/.github/workflows/npm-publish.yml +++ b/.github/workflows/npm-publish.yml @@ -285,8 +285,18 @@ jobs: Add-Content $env:GITHUB_PATH "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64" Add-Content $env:GITHUB_PATH "C:\BuildTools\VC\Tools\Llvm\x64\bin" - $env:LIB = "" - Add-Content $env:GITHUB_ENV "LIB=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\arm64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\ucrt\arm64" + # Add MSVC runtime libraries to LIB + $env:LIB = "C:\BuildTools\VC\Tools\MSVC\$latestVersion\lib\arm64;" + + "C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\arm64;" + + "C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\ucrt\arm64" + Add-Content $env:GITHUB_ENV "LIB=$env:LIB" + + # Add INCLUDE paths + $env:INCLUDE = "C:\BuildTools\VC\Tools\MSVC\$latestVersion\include;" + + "C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt;" + + "C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um;" + + "C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared" + Add-Content $env:GITHUB_ENV "INCLUDE=$env:INCLUDE" shell: powershell - name: Install Rust run: | @@ -315,6 +325,10 @@ jobs: if: steps.cache-installs.outputs.cache-hit != 'true' working-directory: C:\ run: | + if (Test-Path 'C:\protoc') { + Write-Host "Protoc directory exists, skipping installation" + return + } New-Item -Path 'C:\protoc' -ItemType Directory Set-Location C:\protoc Invoke-WebRequest https://github.com/protocolbuffers/protobuf/releases/download/v21.12/protoc-21.12-win64.zip -OutFile C:\protoc\protoc.zip @@ -455,6 +469,10 @@ jobs: if: steps.cache-installs.outputs.cache-hit != 'true' working-directory: C:\ run: | + if (Test-Path 'C:\protoc') { + Write-Host "Protoc directory exists, skipping installation" + return + } New-Item -Path 'C:\protoc' -ItemType Directory Set-Location C:\protoc Invoke-WebRequest https://github.com/protocolbuffers/protobuf/releases/download/v21.12/protoc-21.12-win64.zip -OutFile C:\protoc\protoc.zip diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index ab02b499..29e47ecc 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -195,8 +195,18 @@ jobs: Add-Content $env:GITHUB_PATH "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64" Add-Content $env:GITHUB_PATH "C:\BuildTools\VC\Tools\Llvm\x64\bin" - $env:LIB = "" - Add-Content $env:GITHUB_ENV "LIB=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\arm64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\ucrt\arm64" + # Add MSVC runtime libraries to LIB + $env:LIB = "C:\BuildTools\VC\Tools\MSVC\$latestVersion\lib\arm64;" + + "C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\arm64;" + + "C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\ucrt\arm64" + Add-Content $env:GITHUB_ENV "LIB=$env:LIB" + + # Add INCLUDE paths + $env:INCLUDE = "C:\BuildTools\VC\Tools\MSVC\$latestVersion\include;" + + "C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt;" + + "C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um;" + + "C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared" + Add-Content $env:GITHUB_ENV "INCLUDE=$env:INCLUDE" shell: powershell - name: Install Rust run: | @@ -225,6 +235,10 @@ jobs: if: steps.cache-installs.outputs.cache-hit != 'true' working-directory: C:\ run: | + if (Test-Path 'C:\protoc') { + Write-Host "Protoc directory exists, skipping installation" + return + } New-Item -Path 'C:\protoc' -ItemType Directory Set-Location C:\protoc Invoke-WebRequest https://github.com/protocolbuffers/protobuf/releases/download/v21.12/protoc-21.12-win64.zip -OutFile C:\protoc\protoc.zip