-
Notifications
You must be signed in to change notification settings - Fork 73
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
kaybee merge take long even with one single repository configured #48
Comments
I think the fact that we use Git as the underlying storage is the issue: if we accessed the files on the local filesystem (after cloning) this would be much faster. I need to validate this theory, but if it is true, we should adopt a more neutral approach to storing statements. Git should be supported as any other storage, but after the remote sources are copied locally, we must be able to access them as ordinary files, not as commits (from which we extract files). The consequence is that the signature will not be contained in the commit but in as dedicated file, sibling of statement.yaml (which is a positive side-effect). The only downside is that one would have to sign statements before committing (instead of signing on commit), but this is a negligible disadvantage compare to the advantages we would obtain. |
Hi @copernico , |
Hi @sumeetpatil |
The "unnecessary coupling" only refers to the merge operation, correct? I think we should not question to use Git as storage for statements, as it comes with plenty of features, e.g., signatures and version control, that would be expensive to develop on top of other storages. |
Hi @henrikplate, I know in the meantime we have clarified this, but let me write it down as a documentation for anyone interested. The way we use Git is more than just storing statements in a repository; we also use it to sign statements. As a matter of fact, the key entity that I would therefore decouple the two concerns:
I see no issue in using Git for the former (indeed, I do agree that keeping version of statements is great idea), but we should also be able to treat statement files per-se, without requiring that they be "wrapped" by a commit. When working with the information contained in statements, it should not matter how that information was stored in a remote source. Git or FTP should be the same. A commit (in Git, SVN, or any other code management system) is just a way to "transport" the data. Once retrieved locally ( Proposal:
Consequences:
|
OS: macOS
kaybee merge take long even with one single repository
kaybee version 0.6.15
I used the git cloned file system to do the tests. kaybeeconf.yaml contains one single repo -
repo: file:///*********
Git cloned file system with tar containing 577 vulnerabilities -
It took ~25mins
Git cloned file system without tar containing 720 vulnerabilities -
It took ~13mins
The text was updated successfully, but these errors were encountered: