-
Notifications
You must be signed in to change notification settings - Fork 342
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 generated helix api client library #116
Add generated helix api client library #116
Conversation
@@ -0,0 +1,39 @@ | |||
| |||
Microsoft Visual Studio Solution File, Format Version 12.00 |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
@@ -0,0 +1,18 @@ | |||
<Project Sdk="RoslynTools.RepoToolset"> |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
I thought this was for a general telemetry client usable by .NET products to report status, is this a Helix specific thing? All of the references to Helix are throwing me off as to what this is going to be used for. |
No, this is specifically for builds sending telemetry to helix so they can show up on MC. |
|
||
<ItemGroup> | ||
<PackageReference Include="Microsoft.Rest.ClientRuntime" Version="3.0.3" /> | ||
<PackageReference Include="Newtonsoft.Json" Version="10.0.3" /> |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Maybe I don't have a clear picture of where Helix plays into the model. I thought the telemetry was going to MC and that this tool would be used by CI, official builds, etc... Where can I see the design so that I can understand why we need to call this a Helix thing? |
Helix == MC The telemetry tool sends telemetry to helix as if it was a job running on helix machines. |
I thought "Helix" was the controller thing responsible for acquiring machines and scheduling jobs on them. |
"Helix" is also the telemetry system that collects data from those jobs and provides them for MC to display. This telemetry tool hooks into that processing by sending its own telemetry. Specifically by calling the Telemetry apis. |
@tmat PTAL |
I see. "Helix" still feels a bit overloaded. The namespace in this repo has thus far been "Microsoft.DotNet.Build.blah". I wonder if we should be slightly more targeted here than what's currently in the PR and go with something like "Microsoft.DotNet.Build.HelixTelemetry.Client". |
This client library will also be used by the other tasks brought in from build tools to send test jobs to helix. This isn't the "HelixTelemetry" client. Its the entire surface area of the helix api. |
That makes more sense then. |
I can't find this comment from @tmat in the PR
Was that addressed? |
They are generated by https://github.com/Azure/autorest. The config for the generator is in src/Microsoft.DotNet.Helix/Client/generator. Adding generation of the code to the build isn't really feasible because the generator is a nodejs process. |
@@ -137,7 +137,7 @@ try { | |||
} | |||
|
|||
if ($projects -eq "") { | |||
$projects = Join-Path $RepoRoot "*.sln" | |||
$projects = Join-Path $RepoRoot "**\*.sln" |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
@alexperovich - please file an issue for you to provide a clear story for what the mechanics should be to update. Assuming this issue, I'm fine w/ you merging. |
Created #124 |
Needed for #118
This is the C# client library that allows access to the helix api. The telemetry sending tool will be using this library.