Назад | Перейти на главную страницу

Как настроить сервер Fossil SCM на OSX

Я бы хотел запустить Ископаемое SCM как услуга, которая вызывается при необходимости на моем Mac Mini Server. Как мне это настроить?

Получение установки Fossil SCM в качестве сервера в Mac OS X.

Это работает на 10.7, но должно работать до 10.4 AFAIK.

Предпосылки:

  • бинарный файл fossil где-нибудь в вашей системе (я использовал ~ / bin / fossil)
  • репозиторий ископаемых (или репозитории) в папке (я использовал ~ / fossil-repository)

Шаги:

  • поместите файл org.fossil-scm.service.plist (ниже) в / Library / LaunchDaemons
  • измените ссылки на '/ Users / spdegabrielle /' (~ /) на свой собственный путь
  • откройте Терминал и введите следующее:

    sudo launchctl unload /Library/LaunchDaemons/org.fossil-scm.service.plist

  • откройте свой браузер, чтобы http: // локальный: 8081 / reponame (Я использовал "проекты" имя моего основного репозитория в качестве репозитория по умолчанию)

Для получения дополнительной информации см. Создание демонов и агентов запуска.

org.fossil-scm.service.plist

Некоторое объяснение того, что происходит:

  • В / Library / LaunchDaemons / хранятся файлы .plist, определяющие «Демоны пользователей», которые запускаются при запуске системы. Некоторые другие полезные места: ~ / Library / LaunchAgents для каждого пользователя и / Library / LaunchAgents для всех пользователей.

  • KeepAlive Не перезапускать службу; этот способ использования fossil работает, запустив его в ответ на запрос через порт 8081.

  • Ярлык org.fossil-scm.service называет службу, поэтому ее можно запустить sudo launchctl load и остановить с помощью sudo launchctl load

  • ProgramArguments / Users / spdegabrielle / bin / fossil http --localauth --notfound projects / Users / spdegabrielle / fossil-repository - это запущенный способ сказать fossil http --localauth --notfound projects / Users / spdegabrielle / fossil-repository

Смысл аргументов следующий:

  • fossil http действие запрос, исходящий из порта 8081 (в данном случае), предоставить ответ и выйти. (см. справку по ископаемым http)

  • --localauth автоматический вход, если вы получаете доступ к ископаемому со своего сервера напрямую с помощью http://127.0.0.1:8081/ или http: // локальный: 8081 / (см. справку по ископаемым http)

  • --notfound projects устанавливает репозиторий по умолчанию при указании местоположения репозитория как папки (следующий), а не как конкретный репозиторий

  • / Users / spdegabrielle / fossil-repository - это расположение хранилища (--notfound projects устанавливает значение по умолчанию)

  • RunAtLoad - не запускайте его при загрузке - он будет запускаться по запросу

  • inetdCompatibility приводит к тому, что launchd будет вести себя как inetd для запущенной программы