Недавно у меня был случай использования, когда я хотел клонировать другой репозиторий Bitbucket во время выполнения Pipelines. Сделать это очень просто, но в Интернете много противоречивой информации, поэтому я подумал, что запишу шаги здесь.
Представьте себе очень простой конвейер, который выглядит так:
YAML
1
pipelines
2
default
3
step
4
script
5
git clone git@bitbucket.org:ayushsharma/my-submodules.git
Хранилище, запускающее конвейер, должно иметь разрешение на клонирование my-submodules
.
Создайте ключи SSH для главного репозитория
В Bitbucket перейдите на страницу ключей SSH хранилища под Settings > Pipelines > SSH keys
.
Затем нажмите, Generate keys
чтобы Bitbucket автоматически сгенерировал случайную, безопасную пару ключей SSH. Вы также можете загрузить пользовательскую пару ключей, если хотите.
Вам также может понравиться:
Как я использую Bitbucket в своей обычной рутине
После завершения нажмите Copy public key
. Нам нужно будет вставить это на следующем шаге.
Добавить открытый ключ SSH в целевой репозиторий
Перейти в my-submodules
хранилище. В разделе Settings > General > Access keys
вы должны увидеть опцию добавления открытых ключей SSH, чтобы получить доступ только для чтения.
Нажмите Add key
, введите метку и вставьте открытый ключ, который мы скопировали на предыдущем шаге.
Наш основной репозиторий теперь имеет разрешения только на чтение для клонирования my-submodules
из своих конвейеров. После вышеупомянутой конфигурации выполнение сборки для хранилища покажет все зеленым.
Дальнейшее чтение
Консоль API публикации на страницах Bitbucket
Контроль исходного кода с использованием Atlassian Bitbucket