The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Поддержание актуального архива distfiles, !*! Beda, 20-Мрт-05, 05:04  [смотреть все]
Потребовалось создать FTP, с архивом distfiles - но немогу понять, как правильно это делать...
На ум пришло несколько решений, но времени уйдет жутко много, если их все тестировать - может кто подсказать, в каком направлении двигатся?

1. 'make checksum' - в каждой директории

это решение самое медленное - я столкнулся с невозможностью автоматизировать процес, т.к. некоторые ports запускают диалоги (как samba) или выдается предупреждение, что требуется заход на сайт (как xmill)

2. 'make fetch' или 'make fetch-recursive'

самое неудачное решение (лично для меня) - медлено... т.к. пробует для выкачивания весь списк доступных ftp

Скачать например папку distfiles с ftp.freebsd.org - недостаточно (там к сожалению не все), хочется реализовать такой проект - обновляемся по cvsup ports, дальше обновляем distfiles, файлы архивов которые устарели или убраны из ports переместить в архив (кстати, тут забавный момент с портами, которые отмечены как "marked as broken" - что с ними делать?)

  • Поддержание актуального архива distfiles, !*! AMDmi3, 01:09 , 21-Мрт-05 (1)
    • Поддержание актуального архива distfiles, !*! Beda, 02:42 , 21-Мрт-05 (2)
      >То есть нужно все-все дистфайлы выкачать?

      да, хотелось бы... идея состоит в том, чтобы обновив по cvsup /usr/ports -  оставить в distfiles файлы только для текущего состояния... а предыдущие версии и все остальное, перенести в архив или на болванки.

      >Тебе, видимо, нужно большего, поэтому пиши свой скрипт, который строит базу данных
      >по /usr/ports/*/*/distinfo, и, после cvsup, проверяет, какие файлы присутствуют в старой

      ...тут я столкнулся с такой проблемой, некоторые порты не имеют distinfo, но имеют Makefile - что делать с такой ситуацией?

      >базе данных и при этом отсутствуют в новой - их следует
      >переместить в архив. Заодно для всего проверяет MD5.

      ...тут столкнулся с отсутствием MD5... точнее с отсутсвием хеша, в файле distinfo попадаются записи: MD5 (platon.tar.gz) = IGNORE
      это значит что? что архив, даже если и изменился внутри - не изменил название?

      >Можно пойти дальше, и вообще отказать от make fetch,
      >ftp искать перебором всех (или части) ссылок из ports/Mk/bsd.sites.mk

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

      А вообще-то странная ситуация... что во фре нет уже готового решения для создания такого хранилища архивов.
      Например для создания зеркала официального веб-сайта есть настройки и решения, а для distfiles - нет... скорее всего из-за различия в политике лицензирования, но раз внесли в официальное дерево портов - то можно и облегчить доступ к архивам... и поддержания актуального состояния.

  • Поддержание актуального архива distfiles, !*! butcher, 09:40 , 21-Мрт-05 (3)



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру