diff --git a/sdk/sql/Azure.ResourceManager.Sql/Azure.ResourceManager.Sql.sln b/sdk/sql/Azure.ResourceManager.Sql/Azure.ResourceManager.Sql.sln new file mode 100644 index 0000000000000..524b175c8ce16 --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/Azure.ResourceManager.Sql.sln @@ -0,0 +1,51 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.30309.148 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{4D560444-E373-4AFC-AE75-1181AD58DAC2}") = "Azure.ResourceManager.Sql", "src\Azure.ResourceManager.Sql.csproj", "{91E03E20-8D11-444F-AEEE-F028FF260ABA}" +EndProject +Project("{4D560444-E373-4AFC-AE75-1181AD58DAC2}") = "Azure.ResourceManager.Sql.Tests", "tests\Azure.ResourceManager.Sql.Tests.csproj", "{C5FAF57E-1558-491A-AA93-943F768DAB6D}" +EndProject +Global + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {18F4D97B-59CC-41B2-85B3-5309FC4F1DC2} + EndGlobalSection + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Debug|x64.ActiveCfg = Debug|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Debug|x64.Build.0 = Debug|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Debug|x86.ActiveCfg = Debug|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Debug|x86.Build.0 = Debug|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Release|Any CPU.ActiveCfg = Release|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Release|Any CPU.Build.0 = Release|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Release|x64.ActiveCfg = Release|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Release|x64.Build.0 = Release|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Release|x86.ActiveCfg = Release|Any CPU + {91E03E20-8D11-444F-AEEE-F028FF260ABA}.Release|x86.Build.0 = Release|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Debug|x64.ActiveCfg = Debug|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Debug|x64.Build.0 = Debug|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Debug|x86.ActiveCfg = Debug|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Debug|x86.Build.0 = Debug|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Release|Any CPU.Build.0 = Release|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Release|x64.ActiveCfg = Release|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Release|x64.Build.0 = Release|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Release|x86.ActiveCfg = Release|Any CPU + {C5FAF57E-1558-491A-AA93-943F768DAB6D}.Release|x86.Build.0 = Release|Any CPU + EndGlobalSection +EndGlobal diff --git a/sdk/sql/Azure.ResourceManager.Sql/CHANGELOG.md b/sdk/sql/Azure.ResourceManager.Sql/CHANGELOG.md new file mode 100644 index 0000000000000..349f18ed58f2b --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/CHANGELOG.md @@ -0,0 +1,15 @@ +# Release History + +## 1.0.0-beta.1 (Unreleased) + +### General New Features + + - Support MSAL.NET, Azure.Identity is out of box for supporting MSAL.NET + - Support [OpenTelemetry](https://opentelemetry.io/) for distributed tracing + - HTTP pipeline with custom policies + - Better error-handling + - Support uniform telemetry across all languages + +This package follows the [Azure SDK Design Guidelines for .NET](https://azure.github.io/azure-sdk/dotnet_introduction.html) which provide a number of core capabilities that are shared amongst all Azure SDKs, including the intuitive Azure Identity library, an HTTP Pipeline with custom policies, error-handling, distributed tracing, and much more. + +This is a Public Preview version, so expect incompatible changes in subsequent releases as we improve the product. To provide feedback, please submit an issue in our [Azure SDK for .NET GitHub repo](https://github.com/Azure/azure-sdk-for-net/issues). \ No newline at end of file diff --git a/sdk/sql/Azure.ResourceManager.Sql/Directory.Build.props b/sdk/sql/Azure.ResourceManager.Sql/Directory.Build.props new file mode 100644 index 0000000000000..1a9611bd49242 --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/Directory.Build.props @@ -0,0 +1,6 @@ + + + + diff --git a/sdk/sql/Azure.ResourceManager.Sql/README.md b/sdk/sql/Azure.ResourceManager.Sql/README.md new file mode 100644 index 0000000000000..e0a9685a83ccc --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/README.md @@ -0,0 +1,76 @@ +# Azure sql Management client library for .NET + +This package follows the [new Azure SDK guidelines](https://azure.github.io/azure-sdk/general_introduction.html) which provide a number of core capabilities that are shared amongst all Azure SDKs, including the intuitive Azure Identity library, an HTTP Pipeline with custom policies, error-handling, distributed tracing, and much more. + +## Getting started + +### Install the package + +Install the Azure sql management library for .NET with [NuGet](https://www.nuget.org/): + +```dotnetcli +dotnet add package Azure.ResourceManager.Sql --prerelease +``` + +### Prerequisites + +* You must have an [Azure subscription](https://azure.microsoft.com/free/dotnet/) + +### Authenticate the Client + +To create an authenticated client and start interacting with Azure resources, please see the [quickstart guide here](https://github.com/Azure/azure-sdk-for-net/blob/main/doc/dev/mgmt_quickstart.md) + +## Key concepts + +Key concepts of the Azure .NET SDK can be found [here](https://azure.github.io/azure-sdk/dotnet_introduction.html) + +## Documentation + +Documentation is available to help you learn how to use this package + +- [Quickstart](https://github.com/Azure/azure-sdk-for-net/blob/main/doc/dev/mgmt_quickstart.md) +- [API References](https://docs.microsoft.com/dotnet/api/?view=azure-dotnet) +- [Authentication](https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/identity/Azure.Identity/README.md) + +## Examples + +Code samples for using the management library for .NET can be found in the following locations +- [.NET Management Library Code Samples](https://docs.microsoft.com/samples/browse/?branch=master&languages=csharp&term=managing%20using%20Azure%20.NET%20SDK) + +## Troubleshooting + +- File an issue via [Github + Issues](https://github.com/Azure/azure-sdk-for-net/issues) +- Check [previous + questions](https://stackoverflow.com/questions/tagged/azure+.net) + or ask new ones on Stack Overflow using azure and .net tags. + + +## Next steps + +For more information on Azure SDK, please refer to [this website](https://azure.github.io/azure-sdk/) + +## Contributing + +For details on contributing to this repository, see the [contributing +guide][cg]. + +This project welcomes contributions and suggestions. Most contributions +require you to agree to a Contributor License Agreement (CLA) declaring +that you have the right to, and actually do, grant us the rights to use +your contribution. For details, visit . + +When you submit a pull request, a CLA-bot will automatically determine +whether you need to provide a CLA and decorate the PR appropriately +(e.g., label, comment). Simply follow the instructions provided by the +bot. You will only need to do this once across all repositories using +our CLA. + +This project has adopted the [Microsoft Open Source Code of Conduct][coc]. For +more information see the [Code of Conduct FAQ][coc_faq] or contact + with any additional questions or comments. + + +[cg]: https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/resourcemanager/Azure.ResourceManager/docs/CONTRIBUTING.md +[coc]: https://opensource.microsoft.com/codeofconduct/ +[coc_faq]: https://opensource.microsoft.com/codeofconduct/faq/ \ No newline at end of file diff --git a/sdk/sql/Azure.ResourceManager.Sql/src/Azure.ResourceManager.Sql.csproj b/sdk/sql/Azure.ResourceManager.Sql/src/Azure.ResourceManager.Sql.csproj new file mode 100644 index 0000000000000..f5aa7813f33fc --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/src/Azure.ResourceManager.Sql.csproj @@ -0,0 +1,8 @@ + + + 1.0.0-beta.1 + Azure.ResourceManager.Sql + Azure Resource Manager client SDK for Azure resource provider sql + azure;management;arm;resource manager;sql + + diff --git a/sdk/sql/Azure.ResourceManager.Sql/src/Properties/AssemblyInfo.cs b/sdk/sql/Azure.ResourceManager.Sql/src/Properties/AssemblyInfo.cs new file mode 100644 index 0000000000000..5acd428a4b94d --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/src/Properties/AssemblyInfo.cs @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +using System.Runtime.CompilerServices; + +[assembly: Azure.Core.AzureResourceProviderNamespace("sql")] + +[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")] +[assembly: InternalsVisibleTo("Azure.ResourceManager.Sql.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100d15ddcb29688295338af4b7686603fe614abd555e09efba8fb88ee09e1f7b1ccaeed2e8f823fa9eef3fdd60217fc012ea67d2479751a0b8c087a4185541b851bd8b16f8d91b840e51b1cb0ba6fe647997e57429265e85ef62d565db50a69ae1647d54d7bd855e4db3d8a91510e5bcbd0edfbbecaa20a7bd9ae74593daa7b11b4")] diff --git a/sdk/sql/Azure.ResourceManager.Sql/src/autorest.md b/sdk/sql/Azure.ResourceManager.Sql/src/autorest.md new file mode 100644 index 0000000000000..231a3d7094273 --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/src/autorest.md @@ -0,0 +1,50 @@ +# Generated code configuration + +Run `dotnet build /t:GenerateCode` to generate code. + +``` yaml + +azure-arm: true +csharp: true +library-name: sql +namespace: Azure.ResourceManager.sql +require: /mnt/vss/_work/1/s/azure-rest-api-specs/specification/sql/resource-manager/readme.md +output-folder: $(this-folder)/Generated +clear-output-folder: true +skip-csproj: true +modelerfour: + flatten-payloads: false + + + +format-by-name-rules: + 'tenantId': 'uuid' + 'ETag': 'etag' + 'location': 'azure-location' + '*Uri': 'Uri' + '*Uris': 'Uri' + +rename-rules: + CPU: Cpu + CPUs: Cpus + Os: OS + Ip: IP + Ips: IPs|ips + ID: Id + IDs: Ids + VM: Vm + VMs: Vms + Vmos: VmOS + VMScaleSet: VmScaleSet + DNS: Dns + VPN: Vpn + NAT: Nat + WAN: Wan + Ipv4: IPv4|ipv4 + Ipv6: IPv6|ipv6 + Ipsec: IPsec|ipsec + SSO: Sso + URI: Uri + Etag: ETag|etag + +``` diff --git a/sdk/sql/Azure.ResourceManager.Sql/tests/Azure.ResourceManager.Sql.Tests.csproj b/sdk/sql/Azure.ResourceManager.Sql/tests/Azure.ResourceManager.Sql.Tests.csproj new file mode 100644 index 0000000000000..41322cc398d94 --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/tests/Azure.ResourceManager.Sql.Tests.csproj @@ -0,0 +1,5 @@ + + + + + diff --git a/sdk/sql/Azure.ResourceManager.Sql/tests/sqlManagementTestBase.cs b/sdk/sql/Azure.ResourceManager.Sql/tests/sqlManagementTestBase.cs new file mode 100644 index 0000000000000..0f143443f74d8 --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/tests/sqlManagementTestBase.cs @@ -0,0 +1,41 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +using Azure.Core; +using Azure.Core.TestFramework; +using Azure.ResourceManager.Resources; +using Azure.ResourceManager.TestFramework; +using NUnit.Framework; +using System.Threading.Tasks; + +namespace Azure.ResourceManager.Sql.Tests +{ + public class sqlManagementTestBase : ManagementRecordedTestBase + { + protected ArmClient Client { get; private set; } + + protected sqlManagementTestBase(bool isAsync, RecordedTestMode mode) + : base(isAsync, mode) + { + } + + protected sqlManagementTestBase(bool isAsync) + : base(isAsync) + { + } + + [SetUp] + public void CreateCommonClient() + { + Client = GetArmClient(); + } + + protected async Task CreateResourceGroup(SubscriptionResource subscription, string rgNamePrefix, AzureLocation location) + { + string rgName = Recording.GenerateAssetName(rgNamePrefix); + ResourceGroupData input = new ResourceGroupData(location); + var lro = await subscription.GetResourceGroups().CreateOrUpdateAsync(WaitUntil.Completed, rgName, input); + return lro.Value; + } + } +} diff --git a/sdk/sql/Azure.ResourceManager.Sql/tests/sqlManagementTestEnvironment.cs b/sdk/sql/Azure.ResourceManager.Sql/tests/sqlManagementTestEnvironment.cs new file mode 100644 index 0000000000000..dd237f334bc76 --- /dev/null +++ b/sdk/sql/Azure.ResourceManager.Sql/tests/sqlManagementTestEnvironment.cs @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +using Azure.Core.TestFramework; + +namespace Azure.ResourceManager.Sql.Tests +{ + public class sqlManagementTestEnvironment : TestEnvironment + { + } +} \ No newline at end of file