Skip to content

Commit 1d62a95

Browse files
authored
Merge branch 'main' into feat/secretstore
2 parents 56ee09b + ddba819 commit 1d62a95

21 files changed

+406
-362
lines changed

.github/workflows/build.yaml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
- name: Setup .NET
2323
uses: actions/setup-dotnet@v1
2424
with:
25-
dotnet-version: 7.0.x
25+
dotnet-version: 8.0.x
2626
- name: Lint
2727
run: dotnet format --verify-no-changes
2828

@@ -38,13 +38,13 @@ jobs:
3838
- name: Setup .NET
3939
uses: actions/setup-dotnet@v1
4040
with:
41-
dotnet-version: 7.0.x
41+
dotnet-version: 8.0.x
4242
- name: Build
4343
run: dotnet build --configuration release
4444
- name: Generate Packages
4545
run: dotnet pack --configuration release
4646
- name: Upload packages
47-
uses: actions/upload-artifact@master
47+
uses: actions/upload-artifact@v4
4848
with:
4949
name: packages
5050
path: ${{ env.NUPKG_OUTDIR }}
@@ -54,20 +54,20 @@ jobs:
5454
runs-on: ubuntu-latest
5555
strategy:
5656
matrix:
57-
dotnet-version: ['6.0','7.0']
57+
dotnet-version: ['6.0','8.0']
5858
include:
5959
- dotnet-version: '6.0'
6060
install-3: false
6161
display-name: '.NET 6.0'
6262
framework: 'net6.0'
6363
prefix: 'net6'
6464
install-version: '6.0.x'
65-
- dotnet-version: '7.0'
65+
- dotnet-version: '8.0'
6666
install-3: false
67-
display-name: '.NET 7.0'
68-
framework: 'net7.0'
69-
prefix: 'net7'
70-
install-version: '7.0.x'
67+
display-name: '.NET 8.0'
68+
framework: 'net8.0'
69+
prefix: 'net8'
70+
install-version: '8.0.x'
7171
steps:
7272
- uses: actions/checkout@v1
7373
- name: Parse release version
@@ -76,11 +76,11 @@ jobs:
7676
uses: actions/setup-dotnet@v1
7777
with:
7878
dotnet-version: ${{ matrix.install-version }}
79-
- name: Setup .NET 7.0 # net7 is always required.
79+
- name: Setup .NET 8.0 # net8 is always required.
8080
uses: actions/setup-dotnet@v1
81-
if: ${{ matrix.install-version != '7.0.x' }}
81+
if: ${{ matrix.install-version != '8.0.x' }}
8282
with:
83-
dotnet-version: 7.0.x
83+
dotnet-version: 8.0.x
8484
- name: Build
8585
# disable deterministic builds, just for test run. Deterministic builds break coverage for some reason
8686
run: dotnet build --configuration release /p:GITHUB_ACTIONS=false
@@ -117,7 +117,7 @@ jobs:
117117
if: startswith(github.ref, 'refs/tags/v') && !(endsWith(github.ref, '-rc') || endsWith(github.ref, '-dev') || endsWith(github.ref, '-prerelease'))
118118
steps:
119119
- name: Download release artifacts
120-
uses: actions/download-artifact@v2
120+
uses: actions/download-artifact@v4
121121
with:
122122
name: packages
123123
path: packages

Directory.Packages.props

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<Project>
2+
<PropertyGroup>
3+
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
4+
</PropertyGroup>
5+
<ItemGroup>
6+
<PackageVersion Include="Azure.Storage.Queues" Version="12.20.1" />
7+
<PackageVersion Include="coverlet.collector" Version="6.0.2" />
8+
<PackageVersion Include="coverlet.msbuild" Version="6.0.2" />
9+
<PackageVersion Include="Discord.Net" Version="3.16.0" />
10+
<PackageVersion Include="GitHubActionsTestLogger" Version="2.4.1" />
11+
<PackageVersion Include="Google.Api.CommonProtos" Version="2.16.0" />
12+
<PackageVersion Include="Google.Protobuf" Version="3.28.2" />
13+
<PackageVersion Include="Grpc.AspNetCore.Server" Version="2.66.0" />
14+
<PackageVersion Include="Grpc.AspNetCore.Server.Reflection" Version="2.66.0" />
15+
<PackageVersion Include="Grpc.Net.Client" Version="2.66.0" />
16+
<PackageVersion Include="Grpc.Tools" Version="2.67.0" />
17+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
18+
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="8.0.0" />
19+
<PackageVersion Include="MinVer" Version="6.0.0" />
20+
<PackageVersion Include="Mono.Unix" Version="7.1.0-final.1.21458.1" />
21+
<PackageVersion Include="NSubstitute" Version="5.1.0" />
22+
<PackageVersion Include="System.Text.Json" Version="8.0.5" />
23+
<PackageVersion Include="xunit" Version="2.9.2" />
24+
<PackageVersion Include="xunit.runner.visualstudio" Version="2.8.2" />
25+
</ItemGroup>
26+
</Project>

NuGet.Config

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<configuration>
3+
<packageSources>
4+
<clear />
5+
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
6+
</packageSources>
7+
</configuration>

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ This SDK provides a better interface to create Pluggable Components without worr
66

77
## Prerequisites
88

9-
- [.NET 6 SDK](https://dotnet.microsoft.com/) or later
9+
- [.NET 6 or .NET 8 SDK](https://dotnet.microsoft.com/)
1010
- [Dapr](https://dapr.io/)
1111

1212
### SDK and Dapr Compatibility
@@ -15,6 +15,7 @@ This SDK provides a better interface to create Pluggable Components without worr
1515
|-------------|--------------------------|-------|
1616
| v0.1.x | v1.10 | Using SDK with Dapr v1.9 will not have ETag error handling. |
1717
| v0.2.x | v1.11 | Dapr state store API changes require use of the 0.2.0 SDK. |
18+
| v0.3.x | v1.14 | |
1819

1920
## Implementing a Pluggable Component
2021

samples/AzureStorageQueuesPubSubSample/AzureStorageQueuesPubSubSample.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
</ItemGroup>
1919

2020
<ItemGroup>
21-
<PackageReference Include="Azure.Storage.Queues" Version="12.12.0" />
22-
<PackageReference Include="System.Text.Json" Version="7.0.1" />
21+
<PackageReference Include="Azure.Storage.Queues" />
22+
<PackageReference Include="System.Text.Json" />
2323
</ItemGroup>
2424
</Project>

samples/DiscordBindingSample/DiscordBindingSample.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
</ItemGroup>
1919

2020
<ItemGroup>
21-
<PackageReference Include="Azure.Storage.Queues" Version="12.12.0" />
22-
<PackageReference Include="System.Text.Json" Version="7.0.1" />
23-
<PackageReference Include="Discord.Net" Version="3.9.0" />
21+
<PackageReference Include="Azure.Storage.Queues" />
22+
<PackageReference Include="System.Text.Json" />
23+
<PackageReference Include="Discord.Net" />
2424
</ItemGroup>
2525
</Project>

src/Dapr.PluggableComponents.AspNetCore/Dapr.PluggableComponents.AspNetCore.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@
1414
</ItemGroup>
1515

1616
<ItemGroup>
17-
<PackageReference Include="Grpc.AspNetCore.Server" Version="2.50.0" />
18-
<PackageReference Include="Grpc.AspNetCore.Server.Reflection" Version="2.50.0" />
19-
<PackageReference Include="Mono.Unix" Version="7.1.0-final.1.21458.1" />
17+
<PackageReference Include="Grpc.AspNetCore.Server" />
18+
<PackageReference Include="Grpc.AspNetCore.Server.Reflection" />
19+
<PackageReference Include="Mono.Unix" />
2020
</ItemGroup>
2121

2222
<ItemGroup>

src/Dapr.PluggableComponents.AspNetCore/DaprPluggableComponentsApplication.cs

Lines changed: 22 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -269,26 +269,29 @@ private WebApplication CreateApplication()
269269
configurer(app);
270270
}
271271

272-
app.Lifetime.ApplicationStarted.Register(
273-
() =>
274-
{
275-
// NOTE:
276-
//
277-
// In Kubernetes, the creator of the socket file (this pluggable component) will not be the same user
278-
// as the reader/writer of the socket file (the Dapr sidecar), unlike when running the component
279-
// locally. Therefore, once the socket file has been created (after start), the permissions need be
280-
// updated to allow global read/write.
281-
282-
foreach (var socketPath in socketPaths)
272+
if (!OperatingSystem.IsWindows())
273+
{
274+
app.Lifetime.ApplicationStarted.Register(
275+
() =>
283276
{
284-
var fileInfo = new UnixFileInfo(socketPath);
285-
286-
fileInfo.FileAccessPermissions =
287-
FileAccessPermissions.UserRead | FileAccessPermissions.UserWrite
288-
| FileAccessPermissions.GroupRead | FileAccessPermissions.GroupWrite
289-
| FileAccessPermissions.OtherRead | FileAccessPermissions.OtherWrite;
290-
}
291-
});
277+
// NOTE:
278+
//
279+
// In Kubernetes, the creator of the socket file (this pluggable component) will not be the same user
280+
// as the reader/writer of the socket file (the Dapr sidecar), unlike when running the component
281+
// locally. Therefore, once the socket file has been created (after start), the permissions need be
282+
// updated to allow global read/write.
283+
284+
foreach (var socketPath in socketPaths)
285+
{
286+
var fileInfo = new UnixFileInfo(socketPath);
287+
288+
fileInfo.FileAccessPermissions =
289+
FileAccessPermissions.UserRead | FileAccessPermissions.UserWrite
290+
| FileAccessPermissions.GroupRead | FileAccessPermissions.GroupWrite
291+
| FileAccessPermissions.OtherRead | FileAccessPermissions.OtherWrite;
292+
}
293+
});
294+
}
292295

293296
return app;
294297
}

src/Dapr.PluggableComponents.AspNetCore/WebApplicationBuilderExtensions.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,9 @@ public static string AddDaprService(this WebApplicationBuilder builder, DaprPlug
5656
?? Environment.GetEnvironmentVariable(Constants.EnvironmentVariables.DaprComponentsSocketsExtension)
5757
?? Constants.Defaults.DaprComponentsSocketsExtension;
5858

59-
// TODO: Add support for native (i.e. non-WSL) Windows.
6059
string socketFolder = options.SocketFolder
6160
?? Environment.GetEnvironmentVariable(Constants.EnvironmentVariables.DaprComponentsSocketsFolder)
62-
?? Constants.Defaults.DaprComponentsSocketsFolder;
61+
?? Path.Combine(Path.GetTempPath(), Constants.Defaults.DaprComponentsSocketsFolder);
6362

6463
string socketName = options.SocketName;
6564

src/Dapr.PluggableComponents.Protos/Dapr.PluggableComponents.Protos.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@
2727
</ItemGroup>
2828

2929
<ItemGroup>
30-
<PackageReference Include="Google.Api.CommonProtos" Version="2.6.0" />
31-
<PackageReference Include="Google.Protobuf" Version="3.21.9" />
32-
<PackageReference Include="Grpc.Net.Client" Version="2.50.0" />
33-
<PackageReference Include="Grpc.Tools" Version="2.50.0">
30+
<PackageReference Include="Google.Api.CommonProtos" />
31+
<PackageReference Include="Google.Protobuf" />
32+
<PackageReference Include="Grpc.Net.Client" />
33+
<PackageReference Include="Grpc.Tools">
3434
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
3535
<PrivateAssets>all</PrivateAssets>
3636
</PackageReference>

0 commit comments

Comments
 (0)