Получение по запросу GitHub repo на сервере Ubuntu запускается

У меня есть автомасштабирование группа EC2, и у меня есть центральная конфигурация с помощью мерзавца между серверами. Они настраиваются с ключами, таким образом, им не нужен пароль.

Я хочу удостовериться, когда экземпляр начинает и созданный из AMI (с возможно устаревшей конфигурацией), что это вытягивает конфигурацию с помощью нормальной команды получения по запросу мерзавца. Команда должна быть выполнена как определенный пользователь настолько же только, что пользователь может получение по запросу мерзавца, как это - то с ключом RSA, это - корневой каталог.

Таким образом, по существу на сервере запускаются, определенный пользователь должен выполнить получение по запросу мерзавца в определенном репозитории.

2
задан 18 August 2014 в 01:56
1 ответ

Вы можете установить эту команду в /etc/rc.local. Измените rc.local в вашем образе так, чтобы он состоял из чего-то следующего:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

pushd /certain/repository
su -s /bin/bash -c "git pull" <username>
popd
exit 0

Просто замените на пользователя, с какими привилегиями вы хотите запускать 'git pull'. Также, на всякий случай, не забудьте запустить:

chmod +x /etc/rc.local

Это часть из соответствующей документации RedHat по rc.local, но на всех дистрибутивах:

Скрипт /etc/rc.d/rc.local выполняется командой init во время загрузки или при смене уровня выполнения. Добавление команд в нижнюю часть этого скрипта является простым способом выполнения необходимых задач, таких как запуск специальных служб или инициализация устройств без написания сложных инициализационных скриптов в каталоге /etc/rc.d/init.d/ и создания символических ссылок.

1
ответ дан 3 December 2019 в 12:51

Теги

Похожие вопросы