Overall if for a tool we don't care if it down and consider it's output to be something to ignore it would seem to offer little value, I would suggest we aim for it to be available with useful output.
Yes.
Will this just be adding a comment or will this also be influencing the status of the pull request - i.e. will these reports be affecting the tick or the cross visible next to a PR? When looking at the PR queue the ones with the green ticks are the easiest to jump into, provided no changes are required to the code they are potentially ready to merge - adding false crosses would affect this.
>
Does the commit check run against all commits in the PR?
Not currently, I've added additional checks to verify there is only one commit in the PR :) But this should be possible to do, however, force pushing your way through commit history will not be an easy task.
I think instead it should be checking all commits, it often makes sense to break work into logical chunks - often it is easier to review commit by commit.
For sure I don't want rejection of PRs with multiple commits. It's perfectly valid to write PRs with multiple commits.
As an example it is a bad practice to bump a subsystem version and add to it within a single commit, GitHub provides no way to diff files like schemas when that happens so the only way to check is to pull the PR locally and manually diff. I suspect the manual diff is a very rare event if it happens at all. Component upgrades whilst could be in a single commit often make sense to be in individual commits. When working on an issue and encountering a related but different bug it makes sense to use a separate Jira issue and commit, it is not always practical to submit this fix in it's own PR. If working on a piece of work and another engineer also follows on you need to ensure you don't modify any shared commits etc...
Overall the human code review is still mandatory and part of that review would consider the commits and if they make sense.
Yes.
I see this tool as helping to encourage people to follow proper practice and save humans doing code review having to nag people over such things, or not having the energy to nag, instead accepting things they don't really want.
I think something that could be useful could be to list the checks to be applied somewhere to make it easier to discuss individually, as this would be a change to the WildFly Core and WildFly pull requests it could even make sense to submit as a proposal to the wildfly-proposals repo.
> What happens if it is down? I figure nothing really, i.e. the check just isn't performed, which is a quite reasonable failure mode. :)
> AIUI this also has no impact on ability to merge PRs; i.e. we can ignore the result same as we can ignore CI job results. Also good.
Absolutely right. There will be only one additional status in the list. Everything can be ignored.
Absolutely everything we add to the status list we should be aiming to be accurate, CI is complex and a never ending task to keep on top of intermittent issues and flaky tests but the objective is still to reach that point. We should not be adding something else to this list deliberately with false negative reviews.
Yes, we want it to be accurate. We also want it to be available.
I think a key way to keep this accurate is to resist the temptation to have it do more than it should. Don't come up with rules that sound right but turn out to have valid exceptions or that people just won't follow.
OTOH if the mergers decide they want to do something I don't want a tool preventing us doing it, which is what my questions were driving at. We're way smarter than the tool.
> We can run it in CI somewhere if we need to, I'll need to review the docs and see whats required to run it.
Ken, I will take this with you offline when it's decided that we can set it up.
Yes, understandable. Maybe it can be run where pull-player is being run then? CC Ken.
We can run it in CI somewhere if we need to, I'll need to review the docs and see whats required to run it.
For the initial version, I think we should just try it in OS though, then we can move it at some point in the future.
Ken
I think if we were to add something to the PR process is should not rely on a single individual to maintain it, if that person is busy, asleep, sick or on holiday then there will be no one to deal with down time and other issues,
I can run it my openshift online instance so uptime would be maintained by me for the time being. I have already several instances running like this for some time. During F2F we've also discussed possibility to use
Prow project for wildlfy which would require a platform to run (my openshift cannot cover this) and Tyr would nicely integrate with Prow (already tested). However, I am not aware if there has been any movement with Prow setup for wildfly repository recently.
Couple of questions.
Where does this need to run?
How does this get maintained regarding things like uptime?
Hi,
I would like to present my side project Tyr [1] which is a tool that can verify GitHub pull request structure by a YAML definition (example in [2]) provided by a user. The PR author sees the violations immediately in the PR status which allows to correct mistakes right away when the PR is created.
I've recorded a short demo available at [3].
The validation is fully configurable and can be extended with for instance analysis document links and similar.
I would like to include this functionality in wildfly repository. Thoughts?
_______________________________________________
wildfly-dev mailing list
wildfly-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/wildfly-dev
_______________________________________________
wildfly-dev mailing list
wildfly-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/wildfly-dev
_______________________________________________
wildfly-dev mailing list
wildfly-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/wildfly-dev