Skip to content

Commit

Permalink
Merge branch 'main' into issue-934
Browse files Browse the repository at this point in the history
  • Loading branch information
basyonic authored Feb 5, 2025
2 parents 77ae88f + 2681a9b commit 47c74e2
Show file tree
Hide file tree
Showing 52 changed files with 949 additions and 364 deletions.
19 changes: 19 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -658,6 +658,25 @@ dotnet_naming_rule.private_fields_underscored.symbols = private_fields
dotnet_naming_rule.private_fields_underscored.style = underscored
dotnet_naming_rule.private_fields_underscored.severity = error

#####################################
# Resharper #
#####################################

# disable ConditionIsAlwaysTrueOrFalseAccordingToNullableAPIContract
resharper_Condition_Is_Always_True_Or_False_According_To_Nullable_API_Contract_highlighting = none

# disable RedundantTypeArgumentsOfMethod
resharper_Redundant_Type_Arguments_Of_Method_highlighting = none

# disable NullCoalescingConditionIsAlwaysNotNullAccordingToAPIContract
resharper_Null_Coalescing_Condition_Is_Always_Not_Null_According_To_API_Contract_highlighting = none

# disable PartialTypeWithSinglePart
resharper_Partial_Type_With_Single_Part_highlighting = none

# disable RedundantDefaultMemberInitializer
resharper_Redundant_Default_Member_Initializer_highlighting = none

#####################################################################################################
# Naming Conventions by folder #
# See also https://www.jetbrains.com/help/resharper/Coding_Assistance__Naming_Style.html#configure #
Expand Down
49 changes: 0 additions & 49 deletions .github/workflows/docker-amd64.yml

This file was deleted.

57 changes: 0 additions & 57 deletions .github/workflows/docker-armd64.yml

This file was deleted.

84 changes: 84 additions & 0 deletions .github/workflows/docker-multiarch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# Build Docker images and push them to docker hub

name: Multi-arch Dockerization

on:
workflow_dispatch:
inputs:
docker_tag:
description: "Enter KM version (for docker tag)"
required: true
default: "0.000.000000.0"

jobs:
arm64:
runs-on: ubuntu-24.04-arm
env:
DOCKER_TARGET_PLATFORM: linux/arm64
steps:

- name: Checkout code
uses: actions/checkout@v4

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Build ARM Docker image
run: |
docker build --push --platform linux/arm64 \
--build-arg BUILD_IMAGE_TAG=9.0-noble-arm64v8 \
--build-arg RUN_IMAGE_TAG=9.0-alpine-arm64v8 \
--tag "${{ vars.DOCKERHUB_USERNAME }}/service:${{ github.event.inputs.docker_tag }}-arm64" .
amd64:
runs-on: ubuntu-latest
needs: arm64
env:
DOCKER_TARGET_PLATFORM: linux/amd64
steps:

- name: Checkout code
uses: actions/checkout@v4

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Build AMD Docker image
run: |
docker build --push --platform linux/amd64 \
--build-arg BUILD_IMAGE_TAG=9.0-noble-amd64 \
--build-arg RUN_IMAGE_TAG=9.0-alpine-amd64 \
--tag "${{ vars.DOCKERHUB_USERNAME }}/service:${{ github.event.inputs.docker_tag }}-amd64" .
latest:
runs-on: ubuntu-latest
needs:
- arm64
- amd64
steps:

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Create multi-arch manifest for "latest" tag
run: |
docker pull --platform linux/amd64 "kernelmemory/service:${{ github.event.inputs.docker_tag }}-amd64"
docker pull --platform linux/arm64 "kernelmemory/service:${{ github.event.inputs.docker_tag }}-arm64"
docker manifest create kernelmemory/service:latest \
"kernelmemory/service:${{ github.event.inputs.docker_tag }}-amd64" \
"kernelmemory/service:${{ github.event.inputs.docker_tag }}-arm64"
docker manifest annotate kernelmemory/service:latest "kernelmemory/service:${{ github.event.inputs.docker_tag }}-amd64" --os linux --arch amd64
docker manifest annotate kernelmemory/service:latest "kernelmemory/service:${{ github.event.inputs.docker_tag }}-arm64" --os linux --arch arm64
docker manifest push kernelmemory/service:latest
52 changes: 26 additions & 26 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -3,50 +3,50 @@
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
</PropertyGroup>
<ItemGroup>
<PackageVersion Include="AWSSDK.S3" Version="3.7.410.8" />
<PackageVersion Include="AWSSDK.S3" Version="3.7.412.1" />
<PackageVersion Include="Azure.AI.ContentSafety" Version="1.0.0" />
<PackageVersion Include="Azure.AI.FormRecognizer" Version="4.1.0" />
<PackageVersion Include="Azure.Identity" Version="1.13.1" />
<PackageVersion Include="Azure.Identity" Version="1.13.2" />
<PackageVersion Include="Azure.Search.Documents" Version="11.6.0" />
<PackageVersion Include="Azure.Storage.Blobs" Version="12.23.0" />
<PackageVersion Include="Azure.Storage.Queues" Version="12.21.0" />
<PackageVersion Include="Elastic.Clients.Elasticsearch" Version="8.12.1" />
<PackageVersion Include="DocumentFormat.OpenXml" Version="3.2.0" />
<PackageVersion Include="HtmlAgilityPack" Version="1.11.71" />
<PackageVersion Include="HtmlAgilityPack" Version="1.11.72" />
<PackageVersion Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.22.0" />
<PackageVersion Include="Microsoft.Data.SqlClient" Version="5.2.2" />
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="9.0.0" />
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="9.0.0" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="9.0.0" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.0" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="9.0.0" />
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="9.0.1" />
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="9.0.1" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="9.0.1" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.1" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="9.0.1" />
<PackageVersion Include="Microsoft.Extensions.Hosting.Abstractions" Version="8.0.1" />
<PackageVersion Include="Microsoft.Extensions.Http" Version="9.0.0" />
<PackageVersion Include="Microsoft.Extensions.Http" Version="9.0.1" />
<PackageVersion Include="Microsoft.Extensions.Logging" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="9.0.0" />
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="9.0.1" />
<PackageVersion Include="Microsoft.ML.OnnxRuntimeGenAI" Version="0.5.2" />
<PackageVersion Include="Microsoft.ML.OnnxRuntimeGenAI.Cuda" Version="0.5.2" />
<PackageVersion Include="Microsoft.ML.OnnxRuntimeGenAI.DirectML" Version="0.5.2" />
<PackageVersion Include="MongoDB.Driver.GridFS" Version="2.30.0" />
<PackageVersion Include="Moq" Version="4.20.72" />
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
<PackageVersion Include="OllamaSharp" Version="4.0.17" />
<PackageVersion Include="OllamaSharp" Version="4.0.22" />
<PackageVersion Include="PdfPig" Version="0.1.9" />
<PackageVersion Include="Polly.Core" Version="8.5.0" />
<PackageVersion Include="Polly.Core" Version="8.5.1" />
<PackageVersion Include="RabbitMQ.Client" Version="6.8.1" />
<PackageVersion Include="ReadLine" Version="2.0.1" />
<PackageVersion Include="Swashbuckle.AspNetCore" Version="7.2.0" />
<PackageVersion Include="System.Linq.Async" Version="6.0.1" />
<PackageVersion Include="System.Memory.Data" Version="9.0.0" />
<PackageVersion Include="System.Numerics.Tensors" Version="9.0.0" />
<PackageVersion Include="System.Memory.Data" Version="9.0.1" />
<PackageVersion Include="System.Numerics.Tensors" Version="9.0.1" />
<!-- Tokenizers Data Packages -->
<PackageVersion Include="Microsoft.ML.Tokenizers.Data.Cl100kBase" Version="1.0.0" />
<PackageVersion Include="Microsoft.ML.Tokenizers.Data.O200kBase" Version="1.0.0" />
<PackageVersion Include="Microsoft.ML.Tokenizers.Data.P50kBase" Version="1.0.0" />
<PackageVersion Include="Microsoft.ML.Tokenizers.Data.Cl100kBase" Version="1.0.1" />
<PackageVersion Include="Microsoft.ML.Tokenizers.Data.O200kBase" Version="1.0.1" />
<PackageVersion Include="Microsoft.ML.Tokenizers.Data.P50kBase" Version="1.0.1" />
</ItemGroup>
<!-- Security upgrades -->
<ItemGroup>
<PackageVersion Include="System.Runtime.Caching" Version="9.0.0" />
<PackageVersion Include="System.Runtime.Caching" Version="9.0.1" />
</ItemGroup>
<!-- Missing Strong Name (CS8002) -->
<ItemGroup>
Expand All @@ -58,10 +58,10 @@
</ItemGroup>
<!-- Semantic Kernel -->
<ItemGroup>
<PackageVersion Include="Microsoft.SemanticKernel" Version="1.32.0" />
<PackageVersion Include="Microsoft.SemanticKernel.Abstractions" Version="1.32.0" />
<PackageVersion Include="Microsoft.SemanticKernel.Connectors.OpenAI" Version="1.32.0" />
<PackageVersion Include="Microsoft.SemanticKernel.Connectors.AzureOpenAI" Version="1.32.0" />
<PackageVersion Include="Microsoft.SemanticKernel" Version="1.33.0" />
<PackageVersion Include="Microsoft.SemanticKernel.Abstractions" Version="1.33.0" />
<PackageVersion Include="Microsoft.SemanticKernel.Connectors.OpenAI" Version="1.33.0" />
<PackageVersion Include="Microsoft.SemanticKernel.Connectors.AzureOpenAI" Version="1.33.0" />
</ItemGroup>
<!-- Documentation -->
<ItemGroup>
Expand Down Expand Up @@ -96,19 +96,19 @@
</ItemGroup>
<!-- Tests -->
<ItemGroup>
<PackageVersion Include="coverlet.collector" Version="6.0.2">
<PackageVersion Include="coverlet.collector" Version="6.0.3">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageVersion>
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
<PackageVersion Include="xunit" Version="2.9.2" />
<PackageVersion Include="xunit" Version="2.9.3" />
<PackageVersion Include="xunit.abstractions" Version="2.0.3" />
<PackageVersion Include="xunit.extensibility.core" Version="2.7.1" />
<PackageVersion Include="xunit.runner.visualstudio" Version="3.0.0">
<PackageVersion Include="xunit.runner.visualstudio" Version="3.0.1">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageVersion>
<PackageVersion Include="Xunit.DependencyInjection" Version="9.7.0" />
<PackageVersion Include="Xunit.DependencyInjection" Version="9.7.1" />
<PackageVersion Include="Xunit.DependencyInjection.Logging" Version="9.0.0" />
</ItemGroup>
<!-- Aspire -->
Expand Down
11 changes: 7 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
# Usage: docker buildx build --platform linux/amd64 .
# Usage: docker buildx build --platform linux/arm64 .
# Usage: docker build --platform linux/amd64 --build-arg BUILD_IMAGE_TAG=9.0-noble-amd64 \
# --build-arg RUN_IMAGE_TAG=9.0-alpine-amd64 .
#
# Usage: docker build --platform linux/arm64 --build-arg BUILD_IMAGE_TAG=9.0-noble-arm64v8 \
# --build-arg RUN_IMAGE_TAG=9.0-alpine-arm64v8 .

# See https://github.com/dotnet/dotnet-docker/blob/main/README.sdk.md#full-tag-listing
ARG BUILD_IMAGE_TAG="8.0-jammy"
ARG RUN_IMAGE_TAG="8.0-alpine"
ARG BUILD_IMAGE_TAG="9.0-noble"
ARG RUN_IMAGE_TAG="9.0-alpine"

#########################################################################
# .NET build
Expand Down
Loading

0 comments on commit 47c74e2

Please sign in to comment.