Мой проект разбит на gitmodules примерно так:
/ +
|
+-module_1
| |
| +- cloudbuild.yaml
| +- src/
| +-.git/
|
+-module_2
| |
| +- cloudbuild.yaml
| +- src/
| +-.git/
|
+- .git/
+- .gitmodules
+- cloudbuild.yaml
Я пытаюсь создать подмодули из родительского репозитория, но у cloudbuild есть проблема с этим, поскольку он не извлекает gitmodules самостоятельно. Поэтому, когда я ссылаюсь на module_1/cloudbuild.yaml
как на конфигурацию облачной сборки, сборка завершается ошибкой, потому что этот файл не существует. Я думаю о возможных обходных решениях и хотел бы спросить, возможно ли следующее:
- ссылка на
/cloudbuild.yaml
как на конфигурацию сборки - добавление шага для получения модулей gitmodules в cloudbuild.yaml
- Запустите другой файл облачной сборки
Результат должен выглядеть примерно так:
steps:
- name: 'gcr.io/$PROJECT_ID/git'
args: ['submodule', 'update', '--init']
- name: 'some kind of command that runs cloudbuild.yaml`
args: ['module_1/cloudbuild.yaml']
Заявление об ограничении ответственности. Я знаю, что могу просто разместить все конфигурации облачной сборки в корневом репозитории, но я бы хотел, чтобы модули были как можно более самоуправляемыми.