open-telemetry / opentelemetry-dotnet-contrib

This repository contains set of components extending functionality of the OpenTelemetry .NET SDK. Instrumentation libraries, exporters, and other components can find their home here.
https://opentelemetry.io
Apache License 2.0
421 stars 251 forks source link

[repo] Automate release process #1841

Closed CodeBlanch closed 1 month ago

CodeBlanch commented 1 month ago

Changes

Here's a test run: https://github.com/CodeBlanch/opentelemetry-dotnet-contrib/pull/32

If someone was so inclined, it should be possible to release from a phone now 😄

codecov[bot] commented 1 month ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 73.96%. Comparing base (71655ce) to head (d3331bf). Report is 276 commits behind head on main.

Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/graphs/tree.svg?width=650&height=150&src=pr&token=DG2DEROH83&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry)](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) ```diff @@ Coverage Diff @@ ## main #1841 +/- ## ========================================== + Coverage 73.91% 73.96% +0.05% ========================================== Files 267 294 +27 Lines 9615 10825 +1210 ========================================== + Hits 7107 8007 +900 - Misses 2508 2818 +310 ``` | [Flag](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | Coverage Δ | | |---|---|---| | [unittests-Exporter.Geneva](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `63.81% <ø> (?)` | | | [unittests-Exporter.InfluxDB](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `94.65% <ø> (?)` | | | [unittests-Exporter.Instana](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `68.22% <ø> (?)` | | | [unittests-Exporter.OneCollector](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `89.46% <ø> (?)` | | | [unittests-Exporter.Stackdriver](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `75.73% <ø> (?)` | | | [unittests-Extensions](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `79.33% <ø> (?)` | | | [unittests-Extensions.AWS](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `77.24% <ø> (?)` | | | [unittests-Extensions.Enrichment](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `100.00% <ø> (?)` | | | [unittests-Instrumentation.AWS](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `87.37% <ø> (?)` | | | [unittests-Instrumentation.AWSLambda](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `87.96% <ø> (?)` | | | [unittests-Instrumentation.AspNet](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `74.55% <ø> (?)` | | | [unittests-Instrumentation.AspNetCore](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `85.27% <ø> (?)` | | | [unittests-Instrumentation.ElasticsearchClient](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `79.87% <ø> (?)` | | | [unittests-Instrumentation.EntityFrameworkCore](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `55.49% <ø> (?)` | | | [unittests-Instrumentation.EventCounters](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `76.36% <ø> (?)` | | | [unittests-Instrumentation.GrpcNetClient](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `79.61% <ø> (?)` | | | [unittests-Instrumentation.Hangfire](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `93.58% <ø> (?)` | | | [unittests-Instrumentation.Http](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `81.08% <ø> (?)` | | | [unittests-Instrumentation.Owin](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `83.43% <ø> (?)` | | | [unittests-Instrumentation.Process](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `100.00% <ø> (?)` | | | [unittests-Instrumentation.Quartz](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `78.94% <ø> (?)` | | | [unittests-Instrumentation.Runtime](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `100.00% <ø> (?)` | | | [unittests-Instrumentation.SqlClient](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `90.90% <ø> (?)` | | | [unittests-Instrumentation.StackExchangeRedis](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `71.00% <ø> (?)` | | | [unittests-Instrumentation.Wcf](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `48.91% <ø> (?)` | | | [unittests-PersistentStorage](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `65.44% <ø> (?)` | | | [unittests-ResourceDetectors.AWS](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `76.83% <ø> (?)` | | | [unittests-ResourceDetectors.Container](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `75.00% <ø> (?)` | | | [unittests-Resources.Azure](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `78.35% <ø> (?)` | | | [unittests-Resources.Gcp](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `72.54% <ø> (?)` | | | [unittests-Resources.Host](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `51.16% <ø> (?)` | | | [unittests-Resources.Process](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `81.81% <ø> (?)` | | | [unittests-Resources.ProcessRuntime](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `72.91% <ø> (?)` | | | [unittests-Sampler.AWS](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry) | `87.97% <ø> (?)` | | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry#carryforward-flags-in-the-pull-request-comment) to find out more. [see 290 files with indirect coverage changes](https://app.codecov.io/gh/open-telemetry/opentelemetry-dotnet-contrib/pull/1841/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=open-telemetry)
Kielek commented 1 month ago

I like overall idea of releasing through GitHub pages.

Based on what I see, the whole process has to be either fully handled by new pipeline or fully in the old way.

The new way is IMO great for packages owned and released by maintainers. It works great. I see two potential things to improve:

  1. Allow created end-users requests as described in https://github.com/open-telemetry/opentelemetry-dotnet-contrib/blob/f1ec716d54eaa26bb15b79fc3f3dc2d749f19c98/CONTRIBUTING.md#how-to-request-for-release-of-package and then follow the process by the automated cases. It will allow us to use automated process for packages used by non-maintainers.
  2. Bulk releases as in #1636 - now, we can do it only one by one. I think that the manual way will be faster than here.