From cac18c273e4cb841c44f5ba4fdb404cac00e8255 Mon Sep 17 00:00:00 2001 From: mvenditto Date: Wed, 21 Jun 2023 21:10:12 +0200 Subject: [PATCH] More experiments --- .circleci/continue_config.yml | 329 +++++++++++++++++----------------- 1 file changed, 165 insertions(+), 164 deletions(-) diff --git a/.circleci/continue_config.yml b/.circleci/continue_config.yml index 21ada228..ff4d9aff 100644 --- a/.circleci/continue_config.yml +++ b/.circleci/continue_config.yml @@ -450,47 +450,50 @@ jobs: docker: - image: mcr.microsoft.com/dotnet/sdk:7.0-jammy # Ubuntu 22.04 steps: - - checkout - - restore_cache: - keys: - - gpt4all-csharp-nuget-packages-nix - - attach_workspace: - at: /tmp/workspace - - run: - name: "Prepare Native Libs" - command: | - cd gpt4all-bindings/csharp - mkdir -p runtimes/linux-x64/native - cp /tmp/workspace/runtimes/linux-x64/*.so runtimes/linux-x64/native/ - ls -R runtimes - - run: - name: "Install project dependencies" - command: | - cd gpt4all-bindings/csharp - dotnet restore Gpt4All - - save_cache: - paths: - - ~/.nuget/packages - key: gpt4all-csharp-nuget-packages-nix - - run: - name: Build C# Project - command: | - cd gpt4all-bindings/csharp - dotnet build Gpt4All --configuration Release --nologo - - run: - name: "Run C# Tests" - command: | - cd gpt4all-bindings/csharp - dotnet test Gpt4All.Tests -v n -c Release --filter "SKIP_ON_CI!=True" --logger "trx" - - run: - name: Test results - command: | - cd gpt4all-bindings/csharp/Gpt4All.Tests - dotnet tool install -g trx2junit - export PATH="$PATH:$HOME/.dotnet/tools" - trx2junit TestResults/*.trx - - store_test_results: - path: gpt4all-bindings/csharp/Gpt4All.Tests/TestResults + - when: + condition: << pipeline.parameters.run-csharp-workflow >> + steps: + - checkout + - restore_cache: + keys: + - gpt4all-csharp-nuget-packages-nix + - attach_workspace: + at: /tmp/workspace + - run: + name: "Prepare Native Libs" + command: | + cd gpt4all-bindings/csharp + mkdir -p runtimes/linux-x64/native + cp /tmp/workspace/runtimes/linux-x64/*.so runtimes/linux-x64/native/ + ls -R runtimes + - run: + name: "Install project dependencies" + command: | + cd gpt4all-bindings/csharp + dotnet restore Gpt4All + - save_cache: + paths: + - ~/.nuget/packages + key: gpt4all-csharp-nuget-packages-nix + - run: + name: Build C# Project + command: | + cd gpt4all-bindings/csharp + dotnet build Gpt4All --configuration Release --nologo + - run: + name: "Run C# Tests" + command: | + cd gpt4all-bindings/csharp + dotnet test Gpt4All.Tests -v n -c Release --filter "SKIP_ON_CI!=True" --logger "trx" + - run: + name: Test results + command: | + cd gpt4all-bindings/csharp/Gpt4All.Tests + dotnet tool install -g trx2junit + export PATH="$PATH:$HOME/.dotnet/tools" + trx2junit TestResults/*.trx + - store_test_results: + path: gpt4all-bindings/csharp/Gpt4All.Tests/TestResults build-csharp-windows: executor: @@ -498,97 +501,103 @@ jobs: size: large shell: powershell.exe -ExecutionPolicy Bypass steps: - - checkout - - restore_cache: - keys: - - gpt4all-csharp-nuget-packages-win - - attach_workspace: - at: /tmp/workspace - - run: - name: "Prepare Native Libs" - command: | - cd gpt4all-bindings/csharp - mkdir -p runtimes/win-x64/native - cp /tmp/workspace/runtimes/win-x64/*.dll runtimes/win-x64/native/ - ls -R runtimes - - run: - name: "Install project dependencies" - command: | - cd gpt4all-bindings/csharp - dotnet.exe restore Gpt4All - - save_cache: - paths: - - C:\Users\circleci\.nuget\packages - key: gpt4all-csharp-nuget-packages-win - - run: - name: Build C# Project - command: | - cd gpt4all-bindings/csharp - dotnet.exe build Gpt4All --configuration Release --nologo - - run: - name: "Run C# Tests" - command: | - cd gpt4all-bindings/csharp - dotnet.exe test Gpt4All.Tests -v n -c Release --filter "SKIP_ON_CI!=True" --logger "trx" - - run: - name: Test results - command: | - cd gpt4all-bindings/csharp/Gpt4All.Tests - dotnet tool install -g trx2junit - $Env:Path += ";$Env:USERPROFILE\.dotnet\tools" - trx2junit TestResults/*.trx - - store_test_results: - path: gpt4all-bindings/csharp/Gpt4All.Tests/TestResults + - when: + condition: << pipeline.parameters.run-csharp-workflow >> + steps: + - checkout + - restore_cache: + keys: + - gpt4all-csharp-nuget-packages-win + - attach_workspace: + at: /tmp/workspace + - run: + name: "Prepare Native Libs" + command: | + cd gpt4all-bindings/csharp + mkdir -p runtimes/win-x64/native + cp /tmp/workspace/runtimes/win-x64/*.dll runtimes/win-x64/native/ + ls -R runtimes + - run: + name: "Install project dependencies" + command: | + cd gpt4all-bindings/csharp + dotnet.exe restore Gpt4All + - save_cache: + paths: + - C:\Users\circleci\.nuget\packages + key: gpt4all-csharp-nuget-packages-win + - run: + name: Build C# Project + command: | + cd gpt4all-bindings/csharp + dotnet.exe build Gpt4All --configuration Release --nologo + - run: + name: "Run C# Tests" + command: | + cd gpt4all-bindings/csharp + dotnet.exe test Gpt4All.Tests -v n -c Release --filter "SKIP_ON_CI!=True" --logger "trx" + - run: + name: Test results + command: | + cd gpt4all-bindings/csharp/Gpt4All.Tests + dotnet tool install -g trx2junit + $Env:Path += ";$Env:USERPROFILE\.dotnet\tools" + trx2junit TestResults/*.trx + - store_test_results: + path: gpt4all-bindings/csharp/Gpt4All.Tests/TestResults build-csharp-macos: macos: xcode: "14.0.0" steps: - - checkout - - restore_cache: - keys: - - gpt4all-csharp-nuget-packages-nix - - run: - name: Install dependencies - command: | - brew install --cask dotnet-sdk - - attach_workspace: - at: /tmp/workspace - - run: - name: "Prepare Native Libs" - command: | - cd gpt4all-bindings/csharp - mkdir -p runtimes/osx-x64/native - cp /tmp/workspace/runtimes/osx-x64/*.dylib runtimes/win-x64/native/ - ls -R runtimes - - run: - name: "Install project dependencies" - command: | - cd gpt4all-bindings/csharp - dotnet restore Gpt4All - - save_cache: - paths: - - ~/.nuget/packages - key: gpt4all-csharp-nuget-packages-nix - - run: - name: Build C# Project - command: | - cd gpt4all-bindings/csharp - dotnet build Gpt4All --configuration Release --nologo - - run: - name: "Run C# Tests" - command: | - cd gpt4all-bindings/csharp - dotnet test Gpt4All.Tests -v n -c Release --filter "SKIP_ON_CI!=True" --logger "trx" - - run: - name: Test results - command: | - cd gpt4all-bindings/csharp/Gpt4All.Tests - dotnet tool install -g trx2junit - export PATH="$PATH:$HOME/.dotnet/tools" - trx2junit TestResults/*.trx - - store_test_results: - path: gpt4all-bindings/csharp/Gpt4All.Tests/TestResults + - when: + condition: << pipeline.parameters.run-csharp-workflow >> + steps: + - checkout + - restore_cache: + keys: + - gpt4all-csharp-nuget-packages-nix + - run: + name: Install dependencies + command: | + brew install --cask dotnet-sdk + - attach_workspace: + at: /tmp/workspace + - run: + name: "Prepare Native Libs" + command: | + cd gpt4all-bindings/csharp + mkdir -p runtimes/osx-x64/native + cp /tmp/workspace/runtimes/osx-x64/*.dylib runtimes/win-x64/native/ + ls -R runtimes + - run: + name: "Install project dependencies" + command: | + cd gpt4all-bindings/csharp + dotnet restore Gpt4All + - save_cache: + paths: + - ~/.nuget/packages + key: gpt4all-csharp-nuget-packages-nix + - run: + name: Build C# Project + command: | + cd gpt4all-bindings/csharp + dotnet build Gpt4All --configuration Release --nologo + - run: + name: "Run C# Tests" + command: | + cd gpt4all-bindings/csharp + dotnet test Gpt4All.Tests -v n -c Release --filter "SKIP_ON_CI!=True" --logger "trx" + - run: + name: Test results + command: | + cd gpt4all-bindings/csharp/Gpt4All.Tests + dotnet tool install -g trx2junit + export PATH="$PATH:$HOME/.dotnet/tools" + trx2junit TestResults/*.trx + - store_test_results: + path: gpt4all-bindings/csharp/Gpt4All.Tests/TestResults store-and-upload-nupkgs: docker: @@ -664,83 +673,75 @@ workflows: - build-py-windows - build-py-linux - build-py-macos - build-csharp-deploy: - when: << pipeline.parameters.run-csharp-workflow >> + build-bindings: + when: + or: + - << pipeline.parameters.run-python-workflow >> + - << pipeline.parameters.run-csharp-workflow >> jobs: - - nuget-hold: - type: approval - hold: type: approval - - build-csharp-linux: + - nuget-hold: + type: approval + - build-bindings-backend-linux: filters: branches: only: requires: - hold - - build-bindings-backend-linux - - build-csharp-windows: + - build-bindings-backend-macos: filters: branches: only: requires: - hold - - build-bindings-backend-windows - - build-csharp-macos: + - build-bindings-backend-windows: filters: branches: only: requires: - hold - - build-bindings-backend-macos - - store-and-upload-nupkgs: + - build-bindings-backend-windows-msvc: filters: branches: only: requires: - - nuget-hold - - build-csharp-windows - - build-csharp-linux - - build-csharp-macos - - build-bindings-backend: - when: - or: - - << pipeline.parameters.run-python-workflow >> - - << pipeline.parameters.run-csharp-workflow >> - jobs: - - hold: - type: approval - - build-bindings-backend-linux: + - hold + - build-bindings-backend-debug: filters: branches: only: requires: - - hold - - build-bindings-backend-macos: + - build-bindings-backend-linux + - build-bindings-backend-macos + - build-bindings-backend-windows + - build-bindings-backend-windows-msvc + # CSharp Jobs + - build-csharp-linux: filters: branches: only: requires: - - hold - - build-bindings-backend-windows: + - build-bindings-backend-linux + - build-csharp-windows: filters: branches: only: requires: - - hold - - build-bindings-backend-windows-msvc: + - build-bindings-backend-windows + - build-csharp-macos: filters: branches: only: requires: - - hold - - build-bindings-backend-debug: + - build-bindings-backend-macos + - store-and-upload-nupkgs: filters: branches: only: requires: - - build-bindings-backend-linux - - build-bindings-backend-macos - - build-bindings-backend-windows - - build-bindings-backend-windows-msvc + - nuget-hold + - build-csharp-windows + - build-csharp-linux + - build-csharp-macos \ No newline at end of file