У меня есть базовая процедура развертывания, и я хочу ее автоматизировать. Я использую php для автоматизации из Php. Я вызываю скрипт оболочки. Если я использую PHP & Команда HG сценария оболочки не работает.
Ниже приведен мой пример кода.
index.php
<?php
startBuild();
function startBuild() {
echo shell_exec('sh makeBuild.sh 2>&1');
}
?>
makeBuild.sh
#!/bin/bash
hg pull <hg-path>
hg archive -r1673 --verbose /Users/system1/Sites/Apps/001225035079/1.3
Браузер у меня работает
http://localhost/~system1/Sites/index.php
При выполнении веб-страницы появляется сообщение об ошибке: «makeStandalone.sh: строка 7: hg: команда не найдена, makeStandalone.sh: строка 8: hg: команда не найдена»
Если я запускаю makeBuild.sh из Terminate.app, он работает отлично.
Пожалуйста, помогите мне решить эту проблему, заранее спасибо.
Кажется, что полный путь к hg
исполняемый файл поможет в этом случае. Измените свой скрипт на это:
#!/bin/bash
/path/to/hg pull <hg-path>
/path/to/hg archive -r1673 --verbose /Users/system1/Sites/Apps/001225035079/1.3
замещать /path/to/hg
с правильным путем для вашей установки.
Других решений пока нет …