Add support for RQ in hnsw + flat #331
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Main | |
| on: | |
| push: | |
| branches: | |
| - main | |
| - mvp | |
| tags: | |
| - '**' | |
| paths-ignore: | |
| - 'docs/**' | |
| - 'README.rst' | |
| - 'LICENSE.md' | |
| - 'publishing.md' | |
| pull_request: | |
| env: | |
| WEAVIATE_130: 1.30.18 | |
| WEAVIATE_131: 1.31.16 | |
| WEAVIATE_132: 1.32.11 | |
| WEAVIATE_133: 1.33.0 | |
| WEAVIATE_134: 1.34.0-rc.0 | |
| DOTNET_VERSION: '8.x' | |
| DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true | |
| DOTNET_CLI_TELEMETRY_OPTOUT: true | |
| jobs: | |
| check_formatting: | |
| name: Check Formatting | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Get list of changed C# files | |
| id: changed-files | |
| uses: tj-actions/changed-files@v46 | |
| with: | |
| files: | | |
| **.cs | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: ${{ env.DOTNET_VERSION }} | |
| - name: Check formatting | |
| if: steps.changed-files.outputs.any_changed == 'true' | |
| run: | | |
| dotnet tool restore | |
| dotnet csharpier check ${{ steps.changed-files.outputs.all_changed_files }} | |
| integration-tests: | |
| name: Run Integration Tests | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| server: [ | |
| $WEAVIATE_130, | |
| $WEAVIATE_131, | |
| $WEAVIATE_132, | |
| $WEAVIATE_133, | |
| $WEAVIATE_134 | |
| ] | |
| steps: | |
| - name: Check for required secrets | |
| run: | | |
| if [ -z "${{ secrets.DOCKER_USERNAME }}" ]; then echo "Warning: DOCKER_USERNAME is not set"; fi | |
| if [ -z "${{ secrets.DOCKER_PASSWORD }}" ]; then echo "Warning: DOCKER_PASSWORD is not set"; fi | |
| if [ -z "${{ secrets.NUGET_APIKEY }}" ]; then echo "Warning: NUGET_APIKEY is not set"; fi | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: ${{ env.DOTNET_VERSION }} | |
| - name: Cache NuGet packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.nuget/packages | |
| key: ${{ runner.os }}-nuget-${{ hashFiles('**/.*proj') }} | |
| restore-keys: | | |
| ${{ runner.os }}-nuget- | |
| - name: Restore dependencies | |
| run: dotnet restore | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v3 | |
| if: ${{ !github.event.pull_request.head.repo.fork && github.triggering_actor != 'dependabot[bot]' }} | |
| with: | |
| username: ${{secrets.DOCKER_USERNAME}} | |
| password: ${{secrets.DOCKER_PASSWORD}} | |
| - name: start weaviate | |
| run: /bin/bash ci/start_weaviate.sh ${{ matrix.server }} | |
| - name: Run integration tests | |
| run: dotnet test --no-restore | |
| - name: stop weaviate | |
| if: always() | |
| run: /bin/bash ci/stop_weaviate.sh ${{ matrix.server }} | |
| build-and-publish: | |
| name: Build and Publish to NuGet | |
| needs: [integration-tests] | |
| runs-on: ubuntu-latest | |
| if: startsWith(github.ref, 'refs/tags') | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Check for required secrets | |
| run: | | |
| if [ -z "${{ secrets.NUGET_APIKEY }}" ]; then echo "Warning: NUGET_APIKEY is not set"; fi | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| fetch-tags: true | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: ${{ env.DOTNET_VERSION }} | |
| - name: Cache NuGet packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.nuget/packages | |
| key: ${{ runner.os }}-nuget-${{ hashFiles('**/.*proj') }} | |
| restore-keys: | | |
| ${{ runner.os }}-nuget- | |
| - name: Create NuGet package | |
| run: dotnet pack -c Release -o out src/Weaviate.Client/ | |
| - name: Push package to NuGet | |
| run: dotnet nuget push './out/*.nupkg' --skip-duplicate --api-key ${{ secrets.NUGET_APIKEY }} --source https://api.nuget.org/v3/index.json | |
| - name: GH Release | |
| uses: softprops/action-gh-release@v1 | |
| with: | |
| generate_release_notes: true | |
| draft: true | |
| files: ./out/*.nupkg |