-
Notifications
You must be signed in to change notification settings - Fork 77
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
Support per-repo (or repo type?) configuration #151
Comments
At the moment we support multiple repositories kinds (primary and secondary) and for each kind we run a different set of checks that can be configured separately. Some context about where the primary and secondary repository kinds come from: #15 (comment), #15 (comment), #15 (comment). We can add more repositories kinds, that's not a problem. However, we need to keep in mind that the more we have with more configurable variants, the more complexity we'll introduce producing reports, scoring them and specially combining repositories scores to produce a project's final score with homogenized results. I'd suggest we keep track of how often situations like this occur before making important changes that would affect all projects. Once we have collected more feedback and use cases we can decide if it's better going with the kinds we have, we need to add more or we handle this in a completely different way. We'll be happy to refactor whatever is needed 🙂 I think in many cases the problem described in #66 can be addressed nicely with some headers in the README file, which also makes the information more discoverable by users. We also support .github repos for the default community health files. Some projects' repositories may not need to be added to CLOMonitor at all, as with a reference to some key docs from the main one may be enough. On a side note about KNative, it looks like neither the library we are using to detect licenses nor Github are detecting it properly. Maybe it's because the LICENSE file contains the text of two licenses (CC and Apache), but not sure. CC is not on our list of approved licenses either (that affects the approved license check), but we could change that. |
Zoning in on the License issue, that's where things get somewhat complex. Because of this split-brained scenario, I'm personally trying to push for the existence of a This has been discussed previously (cncf/project-template#12) and I think it's the ideal path forward. Likewise it should also simplify the license checks. |
Cool, that'd be nice 👍 |
Adding my 2 cents: I'd vote for more repo types than just primary and secondary, such as |
Just brainstorming... but do you want to get into the mode of continually needing to define new repo types as new ones come along? Would it make more sense to simply let the repo owner specify (somehow) that they don't have/need a certain type of artifact? I would think that the most important thing is that the repo owner went thru the thought process about each one and explicitly said "we don't need this for our stuff" rather than trying to fit into CLOMonitor's definition of what type of repo it might be? |
You bring up a great point @duglin. Hopefully we'll be able to come up with some kinds that cover most cases. But it could be a problem, you are right. We actually provide a way to declare checks exemptions per repository, but IMHO it should only be used in some exceptional cases, and not as a way of configuring CLOMonitor. The main problem I see with encouraging projects to go this way is that it could be misused easily and some important checks could be left out, reducing the utility of the tool. |
@cynthia-sg and I have started working on this issue today. Depending on the approach we take, quite a few changes may be required and we'd like to get on the right track with this as soon as possible in preparation for an upcoming 1.0 release. At the moment, we support two repository kinds, We were considering how it would look like switching to three: Even though the current model does not fit well in some cases, it's working fine for most projects. Many of them have a single repository that covers all CLOMonitor checks, so in those cases we could flag a single repo as A possible distribution of the checks per kind could be:
Any thoughts that can help shaping this are very welcome! 🙂 /cc @caniszczyk |
Please see the [checks documentation](https://github.com/cncf/clomonitor/blob/main/docs/checks.md) for more details. Closes #151 Signed-off-by: Sergio Castaño Arteaga <[email protected]> Signed-off-by: Cintia Sanchez Garcia <[email protected]> Co-authored-by: Sergio Castaño Arteaga <[email protected]> Co-authored-by: Cintia Sanchez Garcia <[email protected]>
Please see the [checks documentation](https://github.com/cncf/clomonitor/blob/main/docs/checks.md) for more details. Closes #151 Signed-off-by: Sergio Castaño Arteaga <[email protected]> Signed-off-by: Cintia Sanchez Garcia <[email protected]> Co-authored-by: Sergio Castaño Arteaga <[email protected]> Co-authored-by: Cintia Sanchez Garcia <[email protected]>
Hi! 👋 We've just added support for All repositories have been updated with their corresponding check sets. If you notice that any of them doesn't have the correct check sets assigned please let us know and we'll gladly update it. Lots of things have changed internally, including how scores are calculated and merged, so if you find something that's not working as expected please ping us 🙂 |
I can't seem to find the docs for where to specify the "check" value. Where is that? Also, should there be a link from the main README ( https://github.com/cncf/clomonitor ) to the docs for how to setup a repo for CLOMonitor? The docs in the README focus on a CLOMonitor dev, not a user. |
oh never mind - I see that it's set on your side. I think my comment about docs for users is still valid though :-) |
This is somewhat related to #66 but warrants a new Issue/Thread
Many projects have different repos for different purposes. clomonitor should expand the db schema so repos can be flagged as
governance
,docs
, orcode
repos.For example, Knative has several repos:
If we can decouple the idea of "primary/secondary" repos to instead allow a repo to be flagged as one or more of these categories, I think it will better match many of the projects that exist or will soon be onboarded.
The text was updated successfully, but these errors were encountered: