-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add LLC Quickstart Tutorial #25356
Add LLC Quickstart Tutorial #25356
Conversation
This pull request is protected by Check Enforcer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great! I love all the links to supporting material.
I left a few comments on very minor things I think could be improved. Feel free to ignore, defer, or act on these as you see fit.
Co-authored-by: Mike Kistler <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added mostly nit-picky stuff and naming suggestions for new LLC names for here and in the template files. The one larger item is with regard to the "Explore" section. Would it be possible to add a discussion of what's in the Template file/the structure, etc? We could do this either in once place in Getting Started or broken up in each of the sections where we explore before modifying them for the new service?
…o LLC_QuickstartGuide
I added small description at the top of each section explaining what's in the template project. Some sections have already the description in it, I added for the rest of them. |
|
||
## Setup your repo | ||
|
||
- Fork and clone an [azure-sdk-for-net](https://github.com/Azure/azure-sdk-for-net) repo. Follow the instructions in the [.NET Contributing.md](https://github.com/Azure/azure-sdk-for-net/issues/12903) to fork and clone the `azure-sdk-for-net` repo. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The wrong link? it is an issue link, shall we place a link to the Contributing.md?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is intentional. I added the issue link because the instructions for fork and clone the repo is not added in the Contributing.md yet.
|
||
## Getting started | ||
|
||
For this tutorial, we'll create a getting started project in a branch of your fork of `azure-sdk-for-net` repo. To create the project, we'll copy the [Azure.Template.Generated](https://github.com/Azure/azure-sdk-for-net/tree/main/sdk/template-dpg) project for .NET. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we put the template under /eng/templates? It will consist with .Net Track2 and other language. The sdk folder is for real service library.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We add the template project just like any other service SDK in azure-sdk-for-net repo. It gives the partner teams idea about the repo structure and where to add the sdk.
HLC template project also uses the same structure. Here is an example.
|
||
For this tutorial, we'll create a getting started project in a branch of your fork of `azure-sdk-for-net` repo. To create the project, we'll copy the [Azure.Template.Generated](https://github.com/Azure/azure-sdk-for-net/tree/main/sdk/template-dpg) project for .NET. | ||
|
||
The `Azure.Template.Generated` project is a great place to get started with Azure SDK .NET library development in general, as it contains a number of common patterns we use for tests, samples, documentation, generating API listings. It also has generated code demonstrating an example Data Plane Generated Client. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the src folder of template, there are a folder 'swagger' to store the swagger. Swagger should be in the azure-rest-api-specs, it should not be in the azure-sdk-for-net folder. It may be good not to add Swagger in the template
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the template, src/properties/AssemblyInfo.cs, the NameSpace is not correct, shall we tell customer to correct it in this doc? And there are some Suppressions needed to added otherwise, build will fail. Shall we add those also?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the src folder of template, there are a folder 'swagger' to store the swagger. Swagger should be in the azure-rest-api-specs, it should not be in the azure-sdk-for-net folder. It may be good not to add Swagger in the template
This is just a template project, in the template swagger I added all the CRUD operations which follows the REST API guidelines which gives the partner teams idea about the basic operations. Yes, we use the swagger from azure-rest-api-specs
repo but they are too big to use in the template. Later in the doc I mentioned to remove the swagger folder, also I mentioned in the autorest.md section to add swagger to your service and gave an example.
|
||
You'll notice that the `Azure.Template.Generated` project already has generated code in it! You're welcome to explore what's there -- it's been generated from the swagger file in the `sdk/template-dpg/Azure.Template.Generated/src/swagger` folder. For this tutorial, however, we'll delete these generated files so we can start clean. | ||
|
||
- Delete the Generated folder in the `Azure.Template.Generated` project. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shall we remove the 'swagger' and 'Generated' folder from the template?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's good to see how a fully generated solution works, but interested to hear your perspectives - what would be a reason not to include these in the template?
doc/Data Plane Code Generation/AzureSDKCodeGeneration_DataPlane_Quickstart.md
Outdated
Show resolved
Hide resolved
/check-enforcer override |
Fixes: #24493