я делаю
- uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
token: ${{ secrets.TEMPLATES_KEY }}
гитхаб всё сам подтягивает корректно
но дальше werf ci-env всё равно падает с "не могу скачать сабмодуль, нет доступа"
Ладно, пусть. Добавляю прям в сам шаг с converge перед source "$(werf ci-env github --as-file)" строки
git submodule foreach 'git config --local submodule.${name}.url https://$GIT_TOKEN@github.com/org/repo.git'
git submodule update --init --recursive
всё проходит ок, но при ci-env всё та же ошибка,
fatal: could not read Username for 'https://github.com': No such device or address
но username там и не нужен же.
сам файл .gitmodules стандартный
[submodule "packages/templates"]
path = packages/templates
url = https://github.com/orgr/repo.git
git config --global url."https://<TOKEN>@github.com/orgr/repo.git".insteadOf "https://github.com/orgr/repo.git" или git config --global url."git@github.com:orgr/repo.git".insteadOf "https://github.com/orgr/repo.git"
А если использовать относительные пути?
Сделал пока другому, без сабмодуля. Но хорошо бы дополнить документацию на сайте на эту тему, потому что по слову submodule особо ничего не ищется и вообще непонятно куда копать)
попробовал вот так, теперь новые приколы Error: unable to prepare worktree for commit 93a3d9b15c622c38f3eac927949b8c65868f5173: unable to switch work tree /home/wowsel/.werf/local_cache/git_worktrees/9/local/e1f10b12e9c21779edb9f4893036b8b157bf63fc0a703b5463f23c5acb15770a/worktree to commit 93a3d9b15c622c38f3eac927949b8c65868f5173: cannot update submodules: submodule update command failed: error running command "/usr/bin/git -c core.autocrlf=false -c gc.auto=0 -c commit.gpgsign=false submodule update --checkout --force --init --recursive": exit status 128 Stdout: Stderr: fatal: Unable to find current revision in submodule path 'packages/templates' может сталкивались с таким поведением?
А вы сабмодуль инициализировали? Коммит существует в репозитория сабмодуля?
❯ git submodule status 621ad961411e14d06e91f36cf61e60480851c4b1 packages/templates (heads/main) не совсем понял, а зачем делать коммит в репозиторий сабмодуля?
У вас сабмодуль ссылкается на определённый коммит, который должен существовать в remote.
А, это есть, конечно.
Собственно 621ad961411e14d06e91f36cf61e60480851c4b1 и является последним комитом в ветке main репозитория сабмодуля, всё ок. Доступы есть так же
Обсуждают сегодня