kennknowles commented on a change in pull request #13000:
URL: https://github.com/apache/beam/pull/13000#discussion_r508678719



##########
File path: 
buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
##########
@@ -2063,8 +2066,13 @@ class BeamModulePlugin implements Plugin<Project> {
               args '-c', ". ${project.ext.envdir}/bin/activate && cd 
${copiedPyRoot} && scripts/run_tox.sh $tox_env $distTarBall '$posargs'"
             }
           }
-          inputs.files project.pythonSdkDeps
-          outputs.files project.fileTree(dir: 
"${pythonRootDir}/target/.tox/${tox_env}/log/")
+          outputs.cacheIf { true }
+          inputs.files(project.pythonSdkDeps)
+              .withPropertyName('pythonSdkDeps')
+              .withPathSensitivity(PathSensitivity.RELATIVE)
+
+          outputs.dir("${project.buildDir}/srcs/sdks/python/")

Review comment:
       I'm not sure I understand.
   
   I think by this line `outputs` should contain a dir-type output for 
`build/srcs/sdks/python`:
   
   ```python
             outputs.dir("${project.buildDir}/srcs/sdks/python/")
   ```
   
   The screenshot shows the state of `build/`, which isn't limited to the 
things in `outputs`. At least part of it is explained by:
   
   ```python
         def copiedSrcRoot = "${project.buildDir}/srcs"
         ...
        project.copy { from project.pythonSdkDeps; into copiedSrcRoot }
   ```
   
   If I were debugging this, I would start by making tasks have more disjoint 
directories named roughly after the task itself so I was very certain that each 
directory had sole ownership and I could easily map the directory back to the 
task that created it.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to