-
Notifications
You must be signed in to change notification settings - Fork 60
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
Output customizations: REPORT_TITLE and OUTPUT_FILE #160
Conversation
@zkoppert I am adding some questions in inline comments, where I wasn't sure how to best implement things. |
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.
While writing the inline comments I think i convinced myself that I should implement the default value for the REPORT_TITLE
at a different place. Looking forward to feedback though :)
num_issues_opened=num_issues_opened, | ||
num_issues_closed=num_issues_closed, | ||
labels=["bug"], | ||
report_title="My Custom Report Title", |
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.
@zkoppert I applied the suggested changes. That means moving the default value for the report title into the write_to_markdown() signature. It does lead to a better code structure overall, I think.
However one issue remains in this area:
We feed in the custom title as a parameter here.
Therefore we are not actually testing if it is passed through from the REPORT_TITLE
env variable correctly.
Btw the same issue exists in the testing logic for the hide_label_metrics
in row 305 above.
There I am not sure either if this test really covers what it should.
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 overall I am a bit unclear about the intended logic of using ENV vars in the code.
Some ENV vars are read in various functions in issue_metrics.py
- via main()
, get_env_vars()
, and others.
Yet again other ENV vars are read directly in markdown_writer.py
.
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.
Ideally we would consolidate all env variables being read from the get_env_vars() function.
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.
For this PR it would be good to follow that pattern. We can open a separate PR to get everything using the proper get_env_vars()
function.
@@ -12,8 +12,7 @@ | |||
average_time_to_close: timedelta, | |||
average_time_to_answer: timedelta, | |||
num_issues_opened: int, | |||
num_issues_closed: int, | |||
file: file object = None |
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.
@zkoppert I found these traces in the documentation.
Apparently at some point in the past, a file object was passed to the write_to_markdown()
.
Do you happen to know anything about this?
As I am looking to add the feature to set a custom OUTPUT_FILE, I don't want to go down an implementation path that might have been already tried in the past (and did not work). :)
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.
Adding a link to the commit where I removed that unused bit of documentation. GitHub did not give me a straightforward way to get there from my comment above.
5c5cd84
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.
Yeah I think that was aspirational. I don't think we actually wrote the code to support that.
@zkoppert just had a somewhat random idea: What if we would implement the same functionality but with fewer ENV variables? IdeaWe could make the GHA append to That way we would not have to introduce any new ENV variables. However, this would likely be a breaking change, for anybody that is already creating combined reports today. AlternativeOR, we add only a single variable Not 100% clear about the pros/cons but figured I just share it for input :) |
Because the alternative is a breaking change, I prefer the route of |
Closes #160 Adds the ability for users to designate custom report title and output files. Defaults for each: REPORT_TITLE: "Issue Metrics" OUTPUT_FILE: "issue_metrics.md" if markdown and "issue_metrics.json" if json Signed-off-by: jmeridth <jmeridth@gmail.com> Co-authored-by: Sebastian Spier <github@spier.hu> Co-authored-by: Zack Koppert <zkoppert@github.com>
Closes #160 - [x] Adds the ability for users to designate custom report title and output files. - Defaults for each: - REPORT_TITLE: "Issue Metrics" - OUTPUT_FILE: "issue_metrics.md" if markdown and "issue_metrics.json" if json - [x] Update `.env-example` and include changes there and in docs we forgot in #370 Signed-off-by: jmeridth <jmeridth@gmail.com> Co-authored-by: Sebastian Spier <github@spier.hu> Co-authored-by: Zack Koppert <zkoppert@github.com>
Proposed Changes
Contributes to #156.
My plan is to implement customizability for both
REPORT_TITLE
andOUTPUT_FILE
in this PR.Status:
REPORT_TITLE
- First working implementation of a customizableREPORT_TITLE
OUTPUT_FILE
- Not implemented yetI am sharing this PR early, to get feedback about preferred implementation and testability
Readiness Checklist
Author/Contributor
make lint
and fix any issues that you have introducedmake test
and ensure you have test coverage for the lines you are introducingReviewer
bug
,documentation
,enhancement
,infrastructure
, orbreaking