Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Build

on:
push:
branches:
- main
pull_request:
branches:
- main

jobs:
linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: "6.0.x"
- name: Build with dotnet
run: dotnet build --configuration Release
- name: Test with dotnet
run: dotnet test --configuration Release
windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v1
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: "6.0.x"
- name: Build with dotnet
run: dotnet build --configuration Release
- name: Test with dotnet
run: dotnet test --configuration Release
56 changes: 56 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Release to NuGet

on:
release:
types: [published]

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
package:
[
RocksDb.Extensions,
RocksDb.Extensions.Protobuf,
RocksDb.Extensions.ProtoBufNet,
RocksDb.Extensions.System.Text.Json
]
steps:
- uses: actions/checkout@v1
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: "6.0.x"
- name: Create NuGet Package
run: dotnet pack -c Release /p:Version=${{ github.event.release.name }} /p:PackageReleaseNotes="See https://github.com/Havret/RocksDb.Extensions/releases/tag/${{ github.event.release.tag_name }}"
- name: Archive NuGet Package
uses: actions/upload-artifact@v1
with:
name: ${{ matrix.package }}
path: ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.nupkg
- name: Archive NuGet Package With Symbols
uses: actions/upload-artifact@v1
with:
name: ${{ matrix.package }}
path: ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.snupkg
- name: Publish NuGet Package
run: dotnet nuget push ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.nupkg --api-key ${{ secrets.nuget_api_key }} --source https://api.nuget.org/v3/index.json
- name: Upload NuGet Package
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.nupkg
asset_name: ${{ matrix.package }}.${{ github.event.release.name }}.nupkg
asset_content_type: application/zip
- name: NuGet Package With Symbols
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./src/${{ matrix.package }}/bin/Release/${{ matrix.package }}.${{ github.event.release.name }}.snupkg
asset_name: ${{ matrix.package }}.${{ github.event.release.name }}.snupkg
asset_content_type: application/zip
Original file line number Diff line number Diff line change
@@ -1,11 +1,28 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<Summary>An opinionated integration of RocksDB with .NET dependency injection system.</Summary>
<Description>An opinionated integration of RocksDB with .NET dependency injection system.</Description>
<TargetFramework>netstandard2.1</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<LangVersion>10</LangVersion>
<Nullable>enable</Nullable>
<PackageProjectUrl>https://github.com/Havret/RocksDb.Extensions</PackageProjectUrl>
<PackageLicenseUrl>https://github.com/Havret/RocksDb.Extensions/blob/master/LICENSE</PackageLicenseUrl>
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/Havret/RocksDb.Extensions</RepositoryUrl>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<Authors>Havret</Authors>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="protobuf-net" Version="3.1.25" />
</ItemGroup>
Expand Down
21 changes: 19 additions & 2 deletions src/RocksDb.Extensions.Protobuf/RocksDb.Extensions.Protobuf.csproj
Original file line number Diff line number Diff line change
@@ -1,11 +1,28 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<Summary>An opinionated integration of RocksDB with .NET dependency injection system.</Summary>
<Description>An opinionated integration of RocksDB with .NET dependency injection system.</Description>
<TargetFramework>netstandard2.1</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<LangVersion>10</LangVersion>
<Nullable>enable</Nullable>
<PackageProjectUrl>https://github.com/Havret/RocksDb.Extensions</PackageProjectUrl>
<PackageLicenseUrl>https://github.com/Havret/RocksDb.Extensions/blob/master/LICENSE</PackageLicenseUrl>
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/Havret/RocksDb.Extensions</RepositoryUrl>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<Authors>Havret</Authors>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
</PropertyGroup>


<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\RocksDb.Extensions\RocksDb.Extensions.csproj"/>
</ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,28 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<Summary>An opinionated integration of RocksDB with .NET dependency injection system.</Summary>
<Description>An opinionated integration of RocksDB with .NET dependency injection system.</Description>
<TargetFramework>netstandard2.1</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<LangVersion>10</LangVersion>
<Nullable>enable</Nullable>
<PackageProjectUrl>https://github.com/Havret/RocksDb.Extensions</PackageProjectUrl>
<PackageLicenseUrl>https://github.com/Havret/RocksDb.Extensions/blob/master/LICENSE</PackageLicenseUrl>
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/Havret/RocksDb.Extensions</RepositoryUrl>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<Authors>Havret</Authors>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="System.Text.Json" Version="6.0.7" />
</ItemGroup>
Expand Down
18 changes: 17 additions & 1 deletion src/RocksDb.Extensions/RocksDb.Extensions.csproj
Original file line number Diff line number Diff line change
@@ -1,12 +1,28 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<Summary>An opinionated integration of RocksDB with .NET dependency injection system.</Summary>
<Description>An opinionated integration of RocksDB with .NET dependency injection system.</Description>
<TargetFramework>netstandard2.1</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<LangVersion>10</LangVersion>
<Nullable>enable</Nullable>
<PackageProjectUrl>https://github.com/Havret/RocksDb.Extensions</PackageProjectUrl>
<PackageLicenseUrl>https://github.com/Havret/RocksDb.Extensions/blob/master/LICENSE</PackageLicenseUrl>
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/Havret/RocksDb.Extensions</RepositoryUrl>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<Authors>Havret</Authors>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
</PropertyGroup>


<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="CommunityToolkit.HighPerformance" Version="8.0.0"/>
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="6.0.0"/>
Expand Down