Я пытаюсь обновить свой приватный репозиторий через работу cron, но ничего похожего не происходит. Я использую Satis для создания репозитория для своих личных пакетов.Обновление Satis через cronjob
Я могу сделать это вручную, войдя в свой аккаунт через SSH и бега:
php bin/satis build satis.json ./ -n
который обновляет все прекрасное, кроме я должен ввести свой кодовую фразу в миллион раз. Я могу обойти это, используя SSH Agent
и думаю, что это может быть моя проблема ...
php /home/accountname/public_html/bin/satis build /home/accountname/public_html/satis.json /home/accountname/public_html/ -n
я что-нибудь не хватает?
UPDATE
Это SSH аутентификации, как я получил эту ошибку по электронной почте (сокращенный вариант)
Reading composer.json of vendor/package (master)
Failed to update [email protected]:vendor/package.git, package information from this repository may be outdated (Permission denied (publickey). fatal: The remote end hung up unexpectedly error: Could not fetch origin)
В документации это говорит об использовании -n
использовать SSH ключ, но Я использую его.
Любые идеи?
UPDATE
Мысли Я хотел бы добавить мою структуру файла безупречной:
{
"name": "Name Of My Repo",
"homepage": "http://repodomain.co.uk",
"repositories": [
{ "type": "vcs", "url": "[email protected]:vendor/package.git" }
],
"require-all": true
}
действительно застрял на этом, документации дерьмо!
нормально, так мне нужно войти в мой сервер с правами администратора и создать SSH-ключи? Поскольку я создал cronjob в качестве пользователя учетной записи и зарегистрировался в учетной записи через SSH как пользователь и создал SSH-ключ, который, как указано выше, не работает. Спасибо, что нашли время ответить. –
только что проверено, а мои ключи SSH расположены по адресу '/ home/accountname/.ssh' –
. Вам нужно иметь ключи как пользователь, который запускает cronjob. Является ли cronjob запущенным как root? – Sven