-
Notifications
You must be signed in to change notification settings - Fork 10
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
We need a way to find download location for artifacts from local maven #42
Comments
So this is technically possible using the extension and keeping another set of metadata for this. I think @mathjeff is doing this for androidX. Maybe we need to think about how |
For the first part, it's simple - we can always make it users's responsibility to create and maintain origin.json.
@mathjeff, what is your approach for androidx, are you actively working on it, any ETA? |
For passing this information to the spdx-gradle-plugin we use DefaultSpdxSbomTaskExtension.mapRepoUri: |
In AndroidX we probably haven't figured out the longterm solution for acquiring this information; for the moment we don't download relevant artifacts from very many places, so we have essentially have a map from filepath (of local maven repo) to remote maven url. Some ideas: A) keep our hardcoded map for now until we need something better It almost feels to me that the most expressive data model would be for us to tell Gradle where the remote urls are and where our local cache repositories are and which local cache repository to use for the corresponding remote url, although during normal builds we don't want Gradle to consider the remote urls anyway. Perhaps that would be similar to having a new local directory for each remote repository. Maybe related, we have a script for downloading remote artifacts ( https://android.googlesource.com/platform/frameworks/support/+/13aec9976bb86fb43c24c5756e73700c87beb180/development/importMaven/importMaven.sh ) which we might update |
Keeping information about url mapping in the build system sounds a bit ... uncomfortable to me. It feels that the build system should not be a source of information but only proceed external information, so B sounds the most reasonable to me. |
When using a local Maven repository for hermetic builds, the build system is currently unable to determine the origin of the artifacts. This results in NOASSERTION being generated for download locations, which can create issues in EO compliance.
I propose that we support annotation of Maven artifacts in local repositories by placing a origin.json file in the folder that contains the artifact. The origin.json file would contain metadata that describes where the artifact was sourced from. For example:
What do you think?
The text was updated successfully, but these errors were encountered: