Насколько я помню, при прямом клонировании возникают проблемы (думаю, это ), поэтому использование токенов для клонирования является рекомендуемым способом.
Однако, если вы хотите использовать SSH-ключи, рекомендую попробовать следующее:
Discourse:
Настоятельно рекомендуем использовать OAuth-токены для плагинов в частных репозиториях. Однако, если это невозможно, см. ниже.
Инструкция по установке с использованием приватного SSH-ключа
Предполагая, что ваш частный git-репозиторий размещён на GitHub, вам необходимо добавить открытый SSH-ключ пользователя вашего сервера в раздел «Deploy keys» репозитория GitHub (https://github.com/SecretOrg/secret-plugin/settings/keys ).
Измените файл app.yml следующим образом (см. пример ниже):
run:
- exec: echo "Beginning of custom commands"
- exec: cd /var/www/discourse && sudo -u discourse bundle install --deployment --without test --without development
- exec: echo "Host github.com\n\tStrictHostKeyChecking no\n" >> /user/.ssh/config
- file:
path: /user/.ssh/id_rsa
chmod: 600
contents: |
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEArCQG213utzqE5YVjTVF5exGRCkE9OuM7LCp/FOuPdoHrFUXk
.... etc ....
-----END RSA PRIVATE KEY-----
- file:
path: /user/.ssh/id_rsa.pub
chmod: 600
contents: ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tj .... etc .... user@discourse
- exec: cd $home/plugins && git clone git@github.com:SecretOrg/secret-plugin.git
- exec: cd $home && sudo -E -u discourse bundle exec rake db:migrate
- exec: cd $home && rm -fr tmp/cache
- exec: cd $home && sudo -E -u discourse bundle exec rake assets:precompile
- exec: rm /user/.ssh/id_rsa
- exec: rm /user/.ssh/id_rsa.pub
- exec: echo "End of custom commands"
cd /var/discourse
./launcher rebuild app
Ваш частный плагин должен быть установлен на вашем экземпляре Discourse.