Direct File/Task Reference from Source Dependency


I’m trying to set up a cross-repo dependency system to allow one git repo to access files and tasks in another git repo. I will need to be able to do so for individual files and Gradle tasks. I’ve gotten set up using Source Dependencies, but I can’t seem to deterministically get a file path to the dependency source from the Gradle build script in the dependent repo…I’ve only figured out how to depend on Gradle artifacts built from that source; and any documentation about it is limited to JARs. I’ve filed a StackOverflow question on the topic of direct file reference, though I did not try to address task dependency in that question and got no responses.

Something I’ve considered but don’t know much about is writing a plugin. It seems like it would be a lot of work, and I’m not sure what needs I have can be met with this feature, but it seems promising. However, I have not yet found a way to depend on a plugin source in a repo directly, either. It seems like it must be packaged and uploaded to some kind of plugin repository in order to be used as such. This would be nice as a stepping stone, but the end goal is to depend directly on source. I know this is a controversial approach, but I’ve previously worked in a monorepo environment where all dependencies on code internal to the organization were direct source dependencies, and I found it solved a lot of problems.

Does the community have any ideas about how I might proceed; with or without a plugin? I’d say a plugin is not ideal, but if it works I’m happy to do it.