Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Remove broken and unused stats workflows #1603

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

Merged
per1234 merged 2 commits into arduino:main from per1234:remove-stats-workflows
Nov 3, 2022
Merged

Remove broken and unused stats workflows #1603

per1234 merged 2 commits into arduino:main from per1234:remove-stats-workflows
Nov 3, 2022

Conversation

Copy link
Contributor

@per1234 per1234 commented Oct 30, 2022
edited
Loading

Motivation

The "arduino-stats" GitHub Actions workflow was designed to periodically gather download statistics from Arduino CDN and push results to Datadog (a46f36a).

The recorded stats from the identical system in the Arduino CLI repository showed a periodic decrease in total download count. Since this is patently impossible, it is clear that something is wrong with the system and that the recorded data is not trustworthy. An investigation into the problem was never done.

On 2022年03月14日, the runs of the "arduino-stats" GitHub Actions workflow began to fail:

Traceback (most recent call last):
 File "/home/runner/work/arduino-ide/arduino-ide/.github/tools/fetch_athena_stats.py", line 127, in <module>
 exec_id = execute(athena_client, query, DEST_S3_OUTPUT)
 File "/home/runner/work/arduino-ide/arduino-ide/.github/tools/fetch_athena_stats.py", line 27, in execute
 wait_for_query_execution_completion(client, execution_id)
 File "/home/runner/work/arduino-ide/arduino-ide/.github/tools/fetch_athena_stats.py", line 40, in wait_for_query_execution_completion
 raise BaseException(
BaseException: query failed or canceled: INVALID_FUNCTION_ARGUMENT: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: "b "

Because there had not been any relevant change in the repository between the last successful run and the first failing run, it seems likely that some external change caused the breakage.

Since the "arduino-stats" workflow was not ever working successfully and there was never an investigation about that, nor any investigation or impact resulting from the last 6 months of failed workflow runs, it is clear the stats are not of any value.

The "github-stats" GitHub Actions workflow periodically gathers GitHub release asset download statistics for Arduino CLI and pushes the results to Datadog.

There are no known problems with the "github-stats" workflow. However, GitHub stats are not very valuable on their own as they only provide an unknown fraction of the total downloads of Arduino IDE. So there is no point in keeping this workflow after the "arduino-stats" workflow is removed. As with the data from the "arduino-stats" workflow, this information has never ended up being used.

Both workflows use deprecated Node.js 12 runtime-based actions:

https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/

and set-output workflow commands:

https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/

These currently result in warnings printed to the workflow run summary page, but will eventually cause the complete breakage of the workflow.

Change description

Remove the broken infrastructure from the repository rather than investing time into fixing and maintaining something that isn't being used anyway.

Other information

Fixes #971

The workflows were removed from the Arduino CLI repository last April without any detrimental affect:

Reviewer checklist

  • PR addresses a single concern.
  • The PR has no duplicates (please search among the Pull Requests before creating one)
  • PR title and description are properly filled.
  • Docs have been added / updated (for bug fixes / features)

@per1234 per1234 added topic: infrastructure Related to project infrastructure type: imperfection Perceived defect in any part of project labels Oct 30, 2022
@per1234 per1234 self-assigned this Oct 30, 2022
Copy link
Contributor

@kittaakos kittaakos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It makes sense to remove it. Thank you!

The "arduino-stats" GitHub Actions workflow was designed to periodically gather download statistics from Arduino CDN and
push results to Datadog.
The recorded stats from the identical system in the Arduino CLI repository showed a periodic decrease in total download
count. Since this is patently impossible, it is clear that something is wrong with the system and that the recorded data
is not trustworthy. An investigation into the problem
was never done.
On 2022年03月14日, the runs of the "arduino-stats" GitHub Actions workflow began to fail. Because there had not been any
relevant change in the repository between the last successful run and the first failing run, it seems that some external
change caused the breakage.
The workflow also uses deprecated Node.js 12 runtime-based actions and set-output workflow command, which currently
results in warnings printed to the workflow run summary page, but will eventually cause the complete breakage of the
workflow.
Since the workflow was not ever working successfully and the lack of an investigation about that indicates that the
stats are not of immediate importance, the best course of action is to simply remove the broken infrastructure from the
repository rather than investing time into fixing something that isn't being used anyway.
The "github-stats" GitHub Actions workflow periodically gathers GitHub release asset download statistics for Arduino CLI
and pushes the results to Datadog.
There are no known problems with this workflow. However, the companion "arduino-stats" workflow that did the same for
the downloads of Arduino IDE from downloads.arduino.cc was broken and thus removed from the repository.
The GitHub stats are not very valuable on their own as they only provide an unknown fraction of the total downloads of
Arduino IDE. They have also not ended up being used.
The workflow also uses deprecated Node.js 12 runtime, which currently results in warnings printed to the workflow run
summary page, but will eventually cause the complete breakage of the workflow.
Since it doesn't provide any value and represents a maintenance burden, the workflow is hereby removed from the
repository.
@per1234 per1234 merged commit dbd52e2 into arduino:main Nov 3, 2022
@per1234 per1234 deleted the remove-stats-workflows branch November 3, 2022 21:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Reviewers

@AlbyIanna AlbyIanna Awaiting requested review from AlbyIanna

@francescospissu francescospissu Awaiting requested review from francescospissu

1 more reviewer

@kittaakos kittaakos kittaakos approved these changes

Reviewers whose approvals may not affect merge requirements
Labels
topic: infrastructure Related to project infrastructure type: imperfection Perceived defect in any part of project
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

Persistent failure of "arduino-stats" GitHub Actions workflow runs

AltStyle によって変換されたページ (->オリジナル) /