-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
[gradle] Support for multi-project builds #815
Comments
Hi @anuraaga , thanks for reporting this. As for separating project dependencies from other dependencies, that is related to #403 - feel free to chime in there. As for the issue described here, Jib, by default, only depends on the
...
tasks.jib.dependsOn project(':lib').jar
... |
Thanks for the pointer to that issue, glad multi layering is already on the radar. For the jar issue, I agree that workaround works. But I disagree that Jib only depends on |
Yeah we might have to do something to force resolution of depenedencies. |
Hi @anuraaga , we have released version |
Thanks - I updated to
|
By the way for context, the project here ':common:server:framework' does have the Java plugin applied and has the task |
I found that the problem happens when the jib project is evaluated before a dependency project, which is allowed by Gradle as it evaluates projects in an alphabetical way, not a dependency graph one (since it has no dependency graph available during evaluation). Sent #880 to fix and add a regression test (my repro repository in the original post is also updated to exercise this behavior) |
@anuraaga Thanks for filing the fix! |
I think a part of this would be also thinking about the layering - I guess project dependencies should go in a separate layer on top of upstream dependencies, or maybe even together with the app.
Description of the issue:
Repro: https://github.com/anuraaga/gradle-jib-multiproject-example
When trying to run
jibExportDockerContext
for a gradle project with multiple subprojects that depend on each other, I found that the project dependency only hascompileJava
run, notjar
. Because of this,jibExportDockerContext
fails when trying to copy the jar withExpected behavior:
jar
task should be run for project dependenciesSteps to reproduce:
In a multi-project build, where
server
depends onlib
, runThere will be a
NoSuchFileException
forlib.jar
Environment:
Windows 10+ Msys2, Gradle 4.9, Java 10
jib-gradle-plugin
Configuration:Adapted:
Log output:
Additional Information:
The text was updated successfully, but these errors were encountered: