diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 997d696..e270eb8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,8 +32,11 @@ jobs: include-hidden-files: true test: - runs-on: ubuntu-latest + runs-on: ${{ matrix.os }} needs: [pack] + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] steps: - uses: actions/checkout@v4 diff --git a/build/Program.cs b/build/Program.cs index 614fb7d..6af9013 100644 --- a/build/Program.cs +++ b/build/Program.cs @@ -123,17 +123,17 @@ public sealed class DownloadMongoTask : AsyncFrostingTask [ // MongoDB 8.x new ProjectInfo("EphemeralMongo8.runtime.win-x64", "windows", "x86_64", "base", 8, "win-x64"), - new ProjectInfo("EphemeralMongo8.runtime.osx-x64", "macos", "x86_64", "base", 8, "osx-x64"), + new ProjectInfo("EphemeralMongo8.runtime.osx-arm64", "macos", "arm64", "base", 8, "osx-arm64"), new ProjectInfo("EphemeralMongo8.runtime.linux-x64", "ubuntu2204", "x86_64", "targeted", 8, "linux-x64"), // MongoDB 7.x new ProjectInfo("EphemeralMongo7.runtime.win-x64", "windows", "x86_64", "base", 7, "win-x64"), - new ProjectInfo("EphemeralMongo7.runtime.osx-x64", "macos", "x86_64", "base", 7, "osx-x64"), + new ProjectInfo("EphemeralMongo7.runtime.osx-arm64", "macos", "arm64", "base", 7, "osx-arm64"), new ProjectInfo("EphemeralMongo7.runtime.linux-x64", "ubuntu2204", "x86_64", "targeted", 7, "linux-x64"), // MongoDB 6.x new ProjectInfo("EphemeralMongo6.runtime.win-x64", "windows", "x86_64", "base", 6, "win-x64"), - new ProjectInfo("EphemeralMongo6.runtime.osx-x64", "macos", "x86_64", "base", 6, "osx-x64"), + new ProjectInfo("EphemeralMongo6.runtime.osx-arm64", "macos", "arm64", "base", 6, "osx-arm64"), new ProjectInfo("EphemeralMongo6.runtime.linux-x64", "ubuntu2204", "x86_64", "targeted", 6, "linux-x64"), ]; diff --git a/src/EphemeralMongo.Core/MongoExecutableLocator.cs b/src/EphemeralMongo.Core/MongoExecutableLocator.cs index 3c8f426..50ae641 100644 --- a/src/EphemeralMongo.Core/MongoExecutableLocator.cs +++ b/src/EphemeralMongo.Core/MongoExecutableLocator.cs @@ -36,7 +36,7 @@ internal sealed class MongoExecutableLocator : IMongoExecutableLocator { [OSPlatform.Windows] = "win-x64", [OSPlatform.Linux] = "linux-x64", - [OSPlatform.OSX] = "osx-x64", + [OSPlatform.OSX] = "osx-arm64", }; private static string GetMongoExecutableFileName(Dictionary mappings) => diff --git a/src/EphemeralMongo.Runtimes/EphemeralMongo6.runtime.osx-x64.csproj b/src/EphemeralMongo.Runtimes/EphemeralMongo6.runtime.osx-arm64.csproj similarity index 100% rename from src/EphemeralMongo.Runtimes/EphemeralMongo6.runtime.osx-x64.csproj rename to src/EphemeralMongo.Runtimes/EphemeralMongo6.runtime.osx-arm64.csproj diff --git a/src/EphemeralMongo.Runtimes/EphemeralMongo7.runtime.osx-x64.csproj b/src/EphemeralMongo.Runtimes/EphemeralMongo7.runtime.osx-arm64.csproj similarity index 100% rename from src/EphemeralMongo.Runtimes/EphemeralMongo7.runtime.osx-x64.csproj rename to src/EphemeralMongo.Runtimes/EphemeralMongo7.runtime.osx-arm64.csproj diff --git a/src/EphemeralMongo.Runtimes/EphemeralMongo8.runtime.osx-x64.csproj b/src/EphemeralMongo.Runtimes/EphemeralMongo8.runtime.osx-arm64.csproj similarity index 100% rename from src/EphemeralMongo.Runtimes/EphemeralMongo8.runtime.osx-x64.csproj rename to src/EphemeralMongo.Runtimes/EphemeralMongo8.runtime.osx-arm64.csproj diff --git a/src/EphemeralMongo.Runtimes/build/copy-runtimes.targets b/src/EphemeralMongo.Runtimes/build/copy-runtimes.targets index fafc705..4527c69 100644 --- a/src/EphemeralMongo.Runtimes/build/copy-runtimes.targets +++ b/src/EphemeralMongo.Runtimes/build/copy-runtimes.targets @@ -3,7 +3,7 @@ <_EphemeralMongoRid Condition="$([MSBuild]::IsOSPlatform('Windows'))">win-x64 <_EphemeralMongoRid Condition="$([MSBuild]::IsOSPlatform('Linux'))">linux-x64 - <_EphemeralMongoRid Condition="$([MSBuild]::IsOSPlatform('OSX'))">osx-x64 + <_EphemeralMongoRid Condition="$([MSBuild]::IsOSPlatform('OSX'))">osx-arm64 diff --git a/src/EphemeralMongo.sln b/src/EphemeralMongo.sln index 8a6be5a..2ba2d8d 100644 --- a/src/EphemeralMongo.sln +++ b/src/EphemeralMongo.sln @@ -14,7 +14,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "runtimes", "runtimes", "{81 EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo.Core", "EphemeralMongo.Core\EphemeralMongo.Core.csproj", "{E58299B0-E5C5-4358-ACA2-11AA859EAD81}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo6.runtime.osx-x64", "EphemeralMongo.Runtimes\EphemeralMongo6.runtime.osx-x64.csproj", "{CC4B9A52-C0D0-4652-B75F-62A5F1524E9B}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo6.runtime.osx-arm64", "EphemeralMongo.Runtimes\EphemeralMongo6.runtime.osx-arm64.csproj", "{CC4B9A52-C0D0-4652-B75F-62A5F1524E9B}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo6.runtime.linux-x64", "EphemeralMongo.Runtimes\EphemeralMongo6.runtime.linux-x64.csproj", "{6D723CAC-6C36-432B-AF82-FED039080D40}" EndProject @@ -26,7 +26,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo7", "Ephemera EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo7.runtime.linux-x64", "EphemeralMongo.Runtimes\EphemeralMongo7.runtime.linux-x64.csproj", "{14EB9AE5-8BED-4C4F-A8FA-B1CAA7CDDB31}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo7.runtime.osx-x64", "EphemeralMongo.Runtimes\EphemeralMongo7.runtime.osx-x64.csproj", "{0772619C-E004-474A-AC00-4974C545C825}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo7.runtime.osx-arm64", "EphemeralMongo.Runtimes\EphemeralMongo7.runtime.osx-arm64.csproj", "{0772619C-E004-474A-AC00-4974C545C825}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo7.runtime.win-x64", "EphemeralMongo.Runtimes\EphemeralMongo7.runtime.win-x64.csproj", "{CDDDD084-72FE-4BBB-9239-4B9D038C8F16}" EndProject @@ -34,7 +34,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo8", "Ephemera EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo8.runtime.linux-x64", "EphemeralMongo.Runtimes\EphemeralMongo8.runtime.linux-x64.csproj", "{FBEBBD3B-68F1-4DC7-B76F-BFB4DC5D7564}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo8.runtime.osx-x64", "EphemeralMongo.Runtimes\EphemeralMongo8.runtime.osx-x64.csproj", "{053FFBCB-EBB4-4B0F-8AD1-ED35AF0BE6F1}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo8.runtime.osx-arm64", "EphemeralMongo.Runtimes\EphemeralMongo8.runtime.osx-arm64.csproj", "{053FFBCB-EBB4-4B0F-8AD1-ED35AF0BE6F1}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EphemeralMongo8.runtime.win-x64", "EphemeralMongo.Runtimes\EphemeralMongo8.runtime.win-x64.csproj", "{934F2444-D4EC-4D67-BEE3-C089FC5E61B8}" EndProject diff --git a/src/EphemeralMongo6/EphemeralMongo6.csproj b/src/EphemeralMongo6/EphemeralMongo6.csproj index 3843aed..2c43277 100644 --- a/src/EphemeralMongo6/EphemeralMongo6.csproj +++ b/src/EphemeralMongo6/EphemeralMongo6.csproj @@ -14,7 +14,7 @@ - + diff --git a/src/EphemeralMongo7/EphemeralMongo7.csproj b/src/EphemeralMongo7/EphemeralMongo7.csproj index 327a3c8..0ef944c 100644 --- a/src/EphemeralMongo7/EphemeralMongo7.csproj +++ b/src/EphemeralMongo7/EphemeralMongo7.csproj @@ -14,7 +14,7 @@ - + diff --git a/src/EphemeralMongo8/EphemeralMongo8.csproj b/src/EphemeralMongo8/EphemeralMongo8.csproj index a3487d0..69c6c41 100644 --- a/src/EphemeralMongo8/EphemeralMongo8.csproj +++ b/src/EphemeralMongo8/EphemeralMongo8.csproj @@ -14,7 +14,7 @@ - +