Skip to content

Commit 873df71

Browse files
Fix release process and get the SQL library ready
1 parent c6a2ee1 commit 873df71

File tree

13 files changed

+60
-1642
lines changed

13 files changed

+60
-1642
lines changed

.github/workflows/release.yml

Lines changed: 21 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -27,42 +27,32 @@ jobs:
2727
id: version
2828
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
2929

30-
- name: Pack and Push libraries in dependency order
30+
- name: Pack solution
3131
env:
3232
VERSION: ${{ steps.version.outputs.VERSION }}
33-
NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }}
3433
run: |
3534
set -euo pipefail
35+
dotnet pack DataProvider.sln -c Release -p:Version="$VERSION" -o ./nupkgs
3636
37-
PACKAGES=(
38-
# Tier 0
39-
"Other/Nimblesite.Sql.Model/Nimblesite.Sql.Model.csproj"
40-
# Tier 1
41-
"DataProvider/Nimblesite.DataProvider.Core/Nimblesite.DataProvider.Core.csproj"
42-
"Lql/Nimblesite.Lql.Core/Nimblesite.Lql.Core.csproj"
43-
"Migration/Nimblesite.DataProvider.Migration.Core/Nimblesite.DataProvider.Migration.Core.csproj"
44-
# Tier 2
45-
"DataProvider/Nimblesite.DataProvider.SQLite/Nimblesite.DataProvider.SQLite.csproj"
46-
"DataProvider/Nimblesite.DataProvider.SqlServer/Nimblesite.DataProvider.SqlServer.csproj"
47-
"Lql/Nimblesite.Lql.SQLite/Nimblesite.Lql.SQLite.csproj"
48-
"Lql/Nimblesite.Lql.Postgres/Nimblesite.Lql.Postgres.csproj"
49-
"Lql/Nimblesite.Lql.SqlServer/Nimblesite.Lql.SqlServer.csproj"
50-
"Migration/Nimblesite.DataProvider.Migration.SQLite/Nimblesite.DataProvider.Migration.SQLite.csproj"
51-
"Migration/Nimblesite.DataProvider.Migration.Postgres/Nimblesite.DataProvider.Migration.Postgres.csproj"
52-
"Sync/Nimblesite.Sync.Core/Nimblesite.Sync.Core.csproj"
53-
# Tier 3
54-
"Sync/Nimblesite.Sync.SQLite/Nimblesite.Sync.SQLite.csproj"
55-
"Sync/Nimblesite.Sync.Postgres/Nimblesite.Sync.Postgres.csproj"
56-
# Tier 4
57-
"Sync/Nimblesite.Sync.Http/Nimblesite.Sync.Http.csproj"
58-
)
59-
60-
for proj in "${PACKAGES[@]}"; do
61-
name=$(basename "$proj" .csproj)
62-
echo "::group::Pack and push $name"
63-
dotnet pack "$proj" -c Release -p:Version="$VERSION" -o ./nupkgs
64-
dotnet nuget push "./nupkgs/${name}.${VERSION}.nupkg" \
65-
--api-key "$NUGET_API_KEY" \
37+
- name: Push packages to NuGet
38+
env:
39+
NIMBLESITE_NUGET_KEY: ${{ secrets.NIMBLESITE_NUGET_KEY }}
40+
run: |
41+
set -euo pipefail
42+
if [ -z "${NIMBLESITE_NUGET_KEY:-}" ]; then
43+
echo "NIMBLESITE_NUGET_KEY secret is not set." >&2
44+
exit 1
45+
fi
46+
shopt -s nullglob
47+
packages=(./nupkgs/*.nupkg)
48+
if [ ${#packages[@]} -eq 0 ]; then
49+
echo "No packages produced — failing." >&2
50+
exit 1
51+
fi
52+
for pkg in "${packages[@]}"; do
53+
echo "::group::Push $pkg"
54+
dotnet nuget push "$pkg" \
55+
--api-key "$NIMBLESITE_NUGET_KEY" \
6656
--source https://api.nuget.org/v3/index.json \
6757
--skip-duplicate
6858
echo "::endgroup::"

DataProvider.sln

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,12 @@ Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "Nimblesite.Lql.TypeProvider
8585
EndProject
8686
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nimblesite.Lql.TypeProvider.FSharp.Tests.Data", "Lql\Nimblesite.Lql.TypeProvider.FSharp.Tests.Data\Nimblesite.Lql.TypeProvider.FSharp.Tests.Data.csproj", "{0D6A831B-4759-46F2-8527-51C8A9CB6F6F}"
8787
EndProject
88+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DataProvider", "DataProvider", "{43BAF0A3-C050-BE83-B489-7FC6F9FDE235}"
89+
EndProject
90+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nimblesite.DataProvider.SqlServer", "DataProvider\Nimblesite.DataProvider.SqlServer\Nimblesite.DataProvider.SqlServer.csproj", "{238A9928-E501-46AD-963B-BB529A983D3E}"
91+
EndProject
92+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Other", "Other", "{A36FAAB1-3B70-FACF-6B1E-E7138A3CFC44}"
93+
EndProject
8894
Global
8995
GlobalSection(SolutionConfigurationPlatforms) = preSolution
9096
Debug|Any CPU = Debug|Any CPU
@@ -527,6 +533,18 @@ Global
527533
{0D6A831B-4759-46F2-8527-51C8A9CB6F6F}.Release|x64.Build.0 = Release|Any CPU
528534
{0D6A831B-4759-46F2-8527-51C8A9CB6F6F}.Release|x86.ActiveCfg = Release|Any CPU
529535
{0D6A831B-4759-46F2-8527-51C8A9CB6F6F}.Release|x86.Build.0 = Release|Any CPU
536+
{238A9928-E501-46AD-963B-BB529A983D3E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
537+
{238A9928-E501-46AD-963B-BB529A983D3E}.Debug|Any CPU.Build.0 = Debug|Any CPU
538+
{238A9928-E501-46AD-963B-BB529A983D3E}.Debug|x64.ActiveCfg = Debug|Any CPU
539+
{238A9928-E501-46AD-963B-BB529A983D3E}.Debug|x64.Build.0 = Debug|Any CPU
540+
{238A9928-E501-46AD-963B-BB529A983D3E}.Debug|x86.ActiveCfg = Debug|Any CPU
541+
{238A9928-E501-46AD-963B-BB529A983D3E}.Debug|x86.Build.0 = Debug|Any CPU
542+
{238A9928-E501-46AD-963B-BB529A983D3E}.Release|Any CPU.ActiveCfg = Release|Any CPU
543+
{238A9928-E501-46AD-963B-BB529A983D3E}.Release|Any CPU.Build.0 = Release|Any CPU
544+
{238A9928-E501-46AD-963B-BB529A983D3E}.Release|x64.ActiveCfg = Release|Any CPU
545+
{238A9928-E501-46AD-963B-BB529A983D3E}.Release|x64.Build.0 = Release|Any CPU
546+
{238A9928-E501-46AD-963B-BB529A983D3E}.Release|x86.ActiveCfg = Release|Any CPU
547+
{238A9928-E501-46AD-963B-BB529A983D3E}.Release|x86.Build.0 = Release|Any CPU
530548
EndGlobalSection
531549
GlobalSection(SolutionProperties) = preSolution
532550
HideSolutionNode = FALSE
@@ -568,6 +586,7 @@ Global
568586
{6AB2EA96-4A75-49DB-AC65-B247BBFAE9A3} = {54B846BA-A27D-B76F-8730-402A5742FF43}
569587
{B0104C42-1B46-4CA5-9E91-A5F09D7E5B92} = {54B846BA-A27D-B76F-8730-402A5742FF43}
570588
{0D6A831B-4759-46F2-8527-51C8A9CB6F6F} = {54B846BA-A27D-B76F-8730-402A5742FF43}
589+
{238A9928-E501-46AD-963B-BB529A983D3E} = {43BAF0A3-C050-BE83-B489-7FC6F9FDE235}
571590
EndGlobalSection
572591
GlobalSection(ExtensibilityGlobals) = postSolution
573592
SolutionGuid = {53128A75-E7B6-4B83-B079-A309FCC2AD9C}

DataProvider/Nimblesite.DataProvider.SQLite.FSharp/Nimblesite.DataProvider.SQLite.FSharp.fsproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
<PropertyGroup>
44
<OutputType>Exe</OutputType>
5+
<IsPackable>false</IsPackable>
56
<TargetFramework>net9.0</TargetFramework>
67
<GenerateDocumentationFile>true</GenerateDocumentationFile>
78
<LangVersion>preview</LangVersion>

DataProvider/Nimblesite.DataProvider.SqlServer/DataProviderIncrementalSourceGenerator.cs

Lines changed: 0 additions & 133 deletions
This file was deleted.

DataProvider/Nimblesite.DataProvider.SqlServer/Nimblesite.DataProvider.SqlServer.csproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
<PropertyGroup>
33
<!-- Package Information -->
44
<PackageId>Nimblesite.DataProvider.SqlServer</PackageId>
5-
<Version>0.1.0-beta</Version>
65
<Authors>ChristianFindlay</Authors>
76
<Description>SQL Server source generator for Nimblesite.DataProvider.Core. Provides compile-time safe database access with automatic code generation from SQL files for SQL Server databases.</Description>
87
<PackageTags>source-generator;sql;sqlserver;database;compile-time-safety;code-generation</PackageTags>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
namespace Nimblesite.DataProvider.SqlServer;
2+
3+
/// <summary>
4+
/// Placeholder marker for the Nimblesite.DataProvider.SqlServer assembly. The
5+
/// SQL Server source generator implementation is not yet ported to the current
6+
/// Nimblesite.DataProvider.Core architecture; this type exists only so the
7+
/// assembly compiles and the package name is reserved on NuGet.
8+
/// </summary>
9+
public static class PlaceholderMarker
10+
{
11+
/// <summary>
12+
/// Gets a marker string identifying this assembly as a placeholder.
13+
/// </summary>
14+
public static string Marker => "Nimblesite.DataProvider.SqlServer placeholder";
15+
}

0 commit comments

Comments
 (0)