Skip to content
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

Deprecate tasks in arcade-extensions #507

Closed
6 of 8 tasks
missymessa opened this issue Aug 3, 2023 · 7 comments
Closed
6 of 8 tasks

Deprecate tasks in arcade-extensions #507

missymessa opened this issue Aug 3, 2023 · 7 comments
Assignees
Labels
Ops - Service Maintenance Used to track issues related to maintaining the services .NET Eng Supports

Comments

@missymessa
Copy link
Member

missymessa commented Aug 3, 2023

Context

Even though "no one is using" the Azure DevOps tasks anymore, the code still exists in the arcade-extensions repo, and thus, must be maintained per CG rules. To eliminate the need for this maintenance, we should delete the code for the tasks and be clear about the deprecation of the API (for future devs to not have to do the same exercise of figuring out why the methods are a no-op).

Note: The tasks are still a part of servicing branches, so they will continue to "be used" by those branches, but are not used by any current branches

Historical Context

The SendStartTelemetry and SendEndTelemetry tasks eventually feed data into the Telemetry API in Helix API. However, all the methods in the Telemetry API are no-ops since circa 2018. These tasks, along with BashOrCmd, were created 5+ years ago to fill a need that wasn't available in Azure DevOps at the time. Since then, the product teams have moved to using functionality in Azure DevOps, thus, there is no longer a need to maintain these tasks.

Action Items

  • Delete the code for the Azure DevOps tasks in dotnet/arcade-extensions. (Do not delete the repo, as it's still needed for the Helix Artifact extension in Azure DevOps). We will also want to keep a "shell" of the task available in the repo so that when the project is rebuilt and published, the tasks don't disappear and possibly cause breaks for any servicing builds that are still referencing the tasks. Include comments in the remaining "shell" of the tasks to reflect the deprecation status of the tasks.
  • Ensure references to these tasks are removed from Arcade and any documentation.
  • Add a comment in the TelemetryController class in Helix API noting the deprecation status and that it's kept around so that callers aren't broken. Additionally, change the API to return a 404 now that it's been deprecated for 5+ years.
  • Update any known code that is currently attempting to use these tasks (clear up any ambiguity of the code's deprecation status)
  • Add alerting to Grafana that looks and alerts on usage of the Telemetry API so that we can track down other places that need to have the task removed. Opting to remove everything, so no need to track who's calling it

Release Note Category

  • Feature changes/additions
  • Bug fixes
  • Internal Infrastructure Improvements

Release Note Description

  • BashOrCmd, SendStartTelemetry, and SendEndTelemetry AzDO tasks have been fully deprecated
  • Fully deprecating the Helix Telemetry API (endpoints will return 404, now)
@missymessa missymessa self-assigned this Aug 3, 2023
@missymessa missymessa added Operations Used by FR to track issues related to operations work Ops - Service Maintenance Used to track issues related to maintaining the services .NET Eng Supports labels Aug 3, 2023
@garath
Copy link
Member

garath commented Aug 3, 2023

Is asking the pipelines that still use these tasks to stop using them an option?

@missymessa
Copy link
Member Author

We can ask them to stop, but we'll probably get more traction making a PR to remove them from the repos ourselves.

@missymessa
Copy link
Member Author

PR to remove dead code from dotnet/arcade-extensions: dotnet/arcade-extensions#75

@missymessa
Copy link
Member Author

PR to deprecate Telemetry API in Helix: https://dnceng.visualstudio.com/internal/_git/dotnet-helix-service/pullrequest/32995

@missymessa
Copy link
Member Author

PRs for other repos:

@ilyas1974 ilyas1974 removed the Operations Used by FR to track issues related to operations work label Aug 7, 2023
@missymessa
Copy link
Member Author

PRs submitted to internal repos; email sent to Partners alerting folks of the total deprecation. Will aim to merge all deprecation PRs at the end of Aug 2023.

@missymessa
Copy link
Member Author

PR to remove to the tasks was merged. The extensions were updated on the AzDO marketplace. Closing this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Ops - Service Maintenance Used to track issues related to maintaining the services .NET Eng Supports
Projects
None yet
Development

No branches or pull requests

3 participants