Связать мои сценарии для создания установщика в Unix?

С GNU grep, можно попробовать (непротестированный):

first_u_file=$(hg resolve -l | grep -m1 '^U')
first_u_file=${first_u_file#U }

-mX говорит grep остановиться после печати X строк, 1 в этом случае. $(...) конструкция подобна обратным галочкам, она превращает вывод в строку. Вторая строка удаляет "U" с начала имени файла.

2
29.10.2014, 18:13
1 ответ

Возможно, слишком большой из молотка для Вашего особого случая, но этого инструмента может на самом деле открыть возможности, которые Вы никогда не воображали прежде. Смотрите на Марионетку. Это - инструмент управления конфигурацией, который позволяет Вам управлять своими клиентами централизованным и агностическим ОС способом.

В Марионетке Вы удостоверяетесь, что определенный пакет установлен путем записи чего-то подобного следующему в конфигурационном файле (на сервере):

$package_name = $operatingsystem ? {
                 debian  => 'apache-for-debian',
                 redhat  => 'apache-for-rhel',
                 default => 'apache',
}
package{$package_name: ensure => installed}

Что касается Вашего варившего домом Сценария PHP, можно подвергнуть его дереву Марионетки на сервере и сделать, чтобы клиенты загрузили его чем-то подобным следующему:

file{'my_script':
      ensure  => file, #as opposed to directory
      path    => '/path/on/client/myscript',
      mode    => 0755,
      source  => 'puppet:///path/on/server/myscript',
}

Вы можете периодически иметь Марионеточную проверку на изменения в конфигурации на сервере и зеркально отразить их на локальном хосте (клиент). Это означает, что, поддерживая Ваш Сценарий PHP после того, как установка также централизована.

3
27.01.2020, 22:06
  • 1
    Привет, спасибо за Ваш ответ! То, когда Вы говорите 'конфигурацию относительно сервера и зеркально отражаете их', является этим manditory? Мы просто хотим дать нашему клиенту, который все связало так, чтобы он мог выполнить их на их машине, и все должно быть установкой (или с небольшим усилием от клиента). Просто мой небольшой PHP script+Mongodb (включенная установка PHP) вот именно! Действительно ли это возможно с Марионеткой? –  iron man 25.07.2013, 21:35
  • 2
    @ironman, Не уверенный, я получаю Ваш комментарий. Конечные пользователи не должны будут иметь дело ни с каким видом "пакета" или установщика: Марионетка обработает это в соответствии с Вами в его конфигурационном файле (файлах) (названный декларацией): Вы даете Марионетке команду устанавливать безотносительно инструментов, Вы нуждаетесь и копируете свой варивший домом сценарий и удостоверяетесь, что это - исполняемый файл. Это все прозрачно конечному пользователю. –  Joseph R. 27.07.2013, 16:37

Теги

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