Skip to content

Commit 4fb4f75

Browse files
authored
NeonPostgres .NET SDK (#47145)
1 parent caede08 commit 4fb4f75

56 files changed

Lines changed: 6721 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/CODEOWNERS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1003,6 +1003,12 @@
10031003
# ServiceLabel: %Large Instance %Mgmt
10041004
# ServiceOwners: @8Gitbrix
10051005

1006+
# PRLabel: %Neon Postgres
1007+
/sdk/neonpostgres/Azure.ResourceManager.*/ @ArthurMa1978
1008+
1009+
# ServiceLabel: %Neon Postgres %Mgmt
1010+
# ServiceOwners: @ArthurMa1978
1011+
10061012
# PRLabel: %Network - CDN
10071013
/sdk/cdn/Azure.ResourceManager.*/ @ptnan7
10081014

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio Version 16
4+
VisualStudioVersion = 16.0.30309.148
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{B572BAAD-0D4F-4AD9-8B3A-505A171C7A37}") = "Azure.ResourceManager.NeonPostgres", "src\Azure.ResourceManager.NeonPostgres.csproj", "{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}"
7+
EndProject
8+
Project("{B572BAAD-0D4F-4AD9-8B3A-505A171C7A37}") = "Azure.ResourceManager.NeonPostgres.Tests", "tests\Azure.ResourceManager.NeonPostgres.Tests.csproj", "{307BCD2D-A761-4156-8284-B821130D18D1}"
9+
EndProject
10+
Project("{B572BAAD-0D4F-4AD9-8B3A-505A171C7A37}") = "Azure.ResourceManager.NeonPostgres.Samples", "samples\Azure.ResourceManager.NeonPostgres.Samples.csproj", "{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}"
11+
EndProject
12+
Global
13+
GlobalSection(SolutionProperties) = preSolution
14+
HideSolutionNode = FALSE
15+
EndGlobalSection
16+
GlobalSection(ExtensibilityGlobals) = postSolution
17+
SolutionGuid = {9E3460F6-1887-4CE9-BCF8-C22E1D6DB9A6}
18+
EndGlobalSection
19+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
20+
Debug|Any CPU = Debug|Any CPU
21+
Debug|x64 = Debug|x64
22+
Debug|x86 = Debug|x86
23+
Release|Any CPU = Release|Any CPU
24+
Release|x64 = Release|x64
25+
Release|x86 = Release|x86
26+
EndGlobalSection
27+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
28+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
29+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Debug|Any CPU.Build.0 = Debug|Any CPU
30+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Debug|x64.ActiveCfg = Debug|Any CPU
31+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Debug|x64.Build.0 = Debug|Any CPU
32+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Debug|x86.ActiveCfg = Debug|Any CPU
33+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Debug|x86.Build.0 = Debug|Any CPU
34+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Release|Any CPU.ActiveCfg = Release|Any CPU
35+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Release|Any CPU.Build.0 = Release|Any CPU
36+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Release|x64.ActiveCfg = Release|Any CPU
37+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Release|x64.Build.0 = Release|Any CPU
38+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Release|x86.ActiveCfg = Release|Any CPU
39+
{82F01D64-CB06-4F3A-ADE3-F0A1B82EF068}.Release|x86.Build.0 = Release|Any CPU
40+
{307BCD2D-A761-4156-8284-B821130D18D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
41+
{307BCD2D-A761-4156-8284-B821130D18D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
42+
{307BCD2D-A761-4156-8284-B821130D18D1}.Debug|x64.ActiveCfg = Debug|Any CPU
43+
{307BCD2D-A761-4156-8284-B821130D18D1}.Debug|x64.Build.0 = Debug|Any CPU
44+
{307BCD2D-A761-4156-8284-B821130D18D1}.Debug|x86.ActiveCfg = Debug|Any CPU
45+
{307BCD2D-A761-4156-8284-B821130D18D1}.Debug|x86.Build.0 = Debug|Any CPU
46+
{307BCD2D-A761-4156-8284-B821130D18D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
47+
{307BCD2D-A761-4156-8284-B821130D18D1}.Release|Any CPU.Build.0 = Release|Any CPU
48+
{307BCD2D-A761-4156-8284-B821130D18D1}.Release|x64.ActiveCfg = Release|Any CPU
49+
{307BCD2D-A761-4156-8284-B821130D18D1}.Release|x64.Build.0 = Release|Any CPU
50+
{307BCD2D-A761-4156-8284-B821130D18D1}.Release|x86.ActiveCfg = Release|Any CPU
51+
{307BCD2D-A761-4156-8284-B821130D18D1}.Release|x86.Build.0 = Release|Any CPU
52+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
53+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Debug|Any CPU.Build.0 = Debug|Any CPU
54+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Debug|x64.ActiveCfg = Debug|Any CPU
55+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Debug|x64.Build.0 = Debug|Any CPU
56+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Debug|x86.ActiveCfg = Debug|Any CPU
57+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Debug|x86.Build.0 = Debug|Any CPU
58+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Release|Any CPU.ActiveCfg = Release|Any CPU
59+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Release|Any CPU.Build.0 = Release|Any CPU
60+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Release|x64.ActiveCfg = Release|Any CPU
61+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Release|x64.Build.0 = Release|Any CPU
62+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Release|x86.ActiveCfg = Release|Any CPU
63+
{2F3CC342-8ECE-4C5F-B3E8-EA7E157ED20F}.Release|x86.Build.0 = Release|Any CPU
64+
EndGlobalSection
65+
EndGlobal
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Release History
2+
3+
## 1.0.0-beta.1 (2024-11-22)
4+
5+
### Features Added
6+
7+
This package follows the [new Azure SDK guidelines](https://azure.github.io/azure-sdk/general_introduction.html), and provides many core capabilities:
8+
9+
- Support MSAL.NET, Azure.Identity is out of box for supporting MSAL.NET.
10+
- Support [OpenTelemetry](https://opentelemetry.io/) for distributed tracing.
11+
- HTTP pipeline with custom policies.
12+
- Better error-handling.
13+
- Support uniform telemetry across all languages.
14+
15+
This package is a Public Preview version, so expect incompatible changes in subsequent releases as we improve the product. To provide feedback, submit an issue in our [Azure SDK for .NET GitHub repo](https://github.com/Azure/azure-sdk-for-net/issues).
16+
17+
> NOTE: For more information about unified authentication, please refer to [Microsoft Azure Identity documentation for .NET](https://docs.microsoft.com//dotnet/api/overview/azure/identity-readme?view=azure-dotnet).
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
2+
<!--
3+
Add any shared properties you want for the projects under this package directory that need to be set before the auto imported Directory.Build.props
4+
-->
5+
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory).., Directory.Build.props))\Directory.Build.props" />
6+
</Project>
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Microsoft Azure NeonPostgres management client library for .NET
2+
3+
Neon is a modern Postgres database service that takes the world’s most-loved database and delivers it as a serverless platform designed to optimize both performance and cost. It eliminates the need for manual server resizing by offering compute and storage autoscaling, including scale-to-zero for inactive databases to save costs. Additionally, Neon supports database branching, enabling iterative CI/CD workflows and instant point-in-time recovery.
4+
5+
Efficient autoscaling for Postgres. Neon’s autoscaling adjusts resources dynamically based on actual usage, boosting performance during traffic spikes.
6+
Faster developer workflows. Via database branching, developers can instantly create database copies for testing, feature development, and schema migrations.
7+
Perfect for AI apps and agents. With pgvector for vector embeddings, serverless speed for agentic infrastructure, and optimal price performance due to scale-to-zero.
8+
9+
This library follows the [new Azure SDK guidelines](https://azure.github.io/azure-sdk/general_introduction.html), and provides many core capabilities:
10+
11+
- Support MSAL.NET, Azure.Identity is out of box for supporting MSAL.NET.
12+
- Support [OpenTelemetry](https://opentelemetry.io/) for distributed tracing.
13+
- HTTP pipeline with custom policies.
14+
- Better error-handling.
15+
- Support uniform telemetry across all languages.
16+
17+
## Getting started
18+
19+
### Install the package
20+
21+
Install the Microsoft Azure NeonPostgres management library for .NET with [NuGet](https://www.nuget.org/):
22+
23+
```dotnetcli
24+
dotnet add package Azure.ResourceManager.NeonPostgres --prerelease
25+
```
26+
27+
### Prerequisites
28+
29+
* You must have an [Microsoft Azure subscription](https://azure.microsoft.com/free/dotnet/).
30+
31+
### Authenticate the Client
32+
33+
To create an authenticated client and start interacting with Microsoft Azure resources, see the [quickstart guide here](https://github.com/Azure/azure-sdk-for-net/blob/main/doc/dev/mgmt_quickstart.md).
34+
35+
## Key concepts
36+
37+
Key concepts of the Microsoft Azure SDK for .NET can be found [here](https://azure.github.io/azure-sdk/dotnet_introduction.html)
38+
39+
## Documentation
40+
41+
Documentation is available to help you learn how to use this package:
42+
43+
- [Quickstart](https://github.com/Azure/azure-sdk-for-net/blob/main/doc/dev/mgmt_quickstart.md).
44+
- [API References](https://docs.microsoft.com/dotnet/api/?view=azure-dotnet).
45+
- [Authentication](https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/identity/Azure.Identity/README.md).
46+
47+
## Examples
48+
49+
Code samples for using the management library for .NET can be found in the following locations
50+
- [.NET Management Library Code Samples](https://aka.ms/azuresdk-net-mgmt-samples)
51+
52+
## Troubleshooting
53+
54+
- File an issue via [GitHub Issues](https://github.com/Azure/azure-sdk-for-net/issues).
55+
- Check [previous questions](https://stackoverflow.com/questions/tagged/azure+.net) or ask new ones on Stack Overflow using Azure and .NET tags.
56+
57+
## Next steps
58+
59+
For more information about Microsoft Azure SDK, see [this website](https://azure.github.io/azure-sdk/).
60+
61+
## Contributing
62+
63+
For details on contributing to this repository, see the [contributing
64+
guide][cg].
65+
66+
This project welcomes contributions and suggestions. Most contributions
67+
require you to agree to a Contributor License Agreement (CLA) declaring
68+
that you have the right to, and actually do, grant us the rights to use
69+
your contribution. For details, visit <https://cla.microsoft.com>.
70+
71+
When you submit a pull request, a CLA-bot will automatically determine
72+
whether you need to provide a CLA and decorate the PR appropriately
73+
(for example, label, comment). Follow the instructions provided by the
74+
bot. You'll only need to do this action once across all repositories
75+
using our CLA.
76+
77+
This project has adopted the [Microsoft Open Source Code of Conduct][coc]. For
78+
more information, see the [Code of Conduct FAQ][coc_faq] or contact
79+
<opencode@microsoft.com> with any other questions or comments.
80+
81+
<!-- LINKS -->
82+
[cg]: https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/resourcemanager/Azure.ResourceManager/docs/CONTRIBUTING.md
83+
[coc]: https://opensource.microsoft.com/codeofconduct/
84+
[coc_faq]: https://opensource.microsoft.com/codeofconduct/faq/

0 commit comments

Comments
 (0)