Прямая ссылка на файл Gradle от Git Репо - PullRequest
2 голосов
/ 15 января 2020

Я пытаюсь использовать Gradle для включения источника, отличного от Java, из отдельного репозитория git в определенные этапы сборки, и зависимый код должен иметь возможность напрямую ссылаться на исходный файл. Вариант использования следующий: мы пытаемся модульно сконфигурировать конфигурации линтинга (в данном случае ESLint), чтобы общие конфиги были извлечены в репозиторий с руководством по стилю и импортированы во все соответствующие репозитории. Обратите внимание, что мы не хотим использовать NPM управление пакетами для этой цели, потому что в конечном итоге мы будем использовать это и для других языков, таких как Java, и хотели бы использовать одну и ту же систему в разных проектах. Представьте себе следующую установку:

| ProjectA (github.com/org/ProjectA)
|---- build.gradle
|---- settings.gradle
|---- .eslintrc.js
|---- src/
|----|---- (a bunch of js files)
| ProjectB (github.com/org/ProjectB)
|---- build.gradle
|---- settings.gradle
|---- .eslintrc.js
|---- src/
|----|---- (a bunch of js files)
| ProjectC (github.com/org/ProjectC)
|---- build.gradle
|---- settings.gradle
|---- dir_containing_config/
|----|---- base_eslintrc.js

.eslintrc.js в проекте A и проекте B хотите расширить dir_containing_config/base_eslintrc.js в проекте C.

Я не эксперт по Gradle, но я искал его и обнаружил, что Source Dependencies является хорошей возможностью, но я не нахожу ничего о том, как получить прямой доступ к каталогу, содержащему raw source из сценария сборки (в отличие от jar, который Я был в состоянии получить доступ, используя конфигурацию, которая зависит от SourceDep). План, который я имею в виду до сих пор, состоит в том, что, как только я смогу получить доступ к этому каталогу из скрипта сборки, нужно скопировать / связать все содержимое этого каталога с более доступным каталогом, у которого нет сумасшедшего сгенерированного пути, который было бы трудно или невозможно ссылаться на .eslintrc.js.

Знаете ли вы, как я могу выполнить sh то, что я хочу сделать? Я открыт для совершенно новых подходов, если тот, который я использую, неэффективен или неэффективен для этой цели.

Спасибо!

...