Size: 1280
Comment:
|
Size: 3528
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 4: | Line 4: |
1. Импорт * Новых * настройка autobuild * Типовые watchfile для sf, gh, gc, g.a... * Подготовленных, из целевого хранилища (критерий выбора, массовость) 1. Синхронизация * с целевым хранилищем * ?с возможной devel-веткой 1. Проверка апстрима * универсальная, для разных схем репозитория (схему можно надумать из rules и autobuild.watch) * ?что умеет uscan? 1. Обновление исходников * универсальное, для разных схем репозитория * с исправлением спека, если обновление успешно * ?с созданием отдельной ветки 1. Сборка обновлённого пакета * правильный apt.conf * критерии успешности * со слиянием, если сборка успешна 1. Тестирование * ?маркировка тестированых 1. Отсылка в g.a и на сборку |
Общие понятия (на примере git.alt): Целевое хранилище:: название ветки в /gears (sisyphus) Пакет:: git-репозиторий на git.alt Схема репозитория:: способ организации на git.alt (http://www.altlinux.org/%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_gear) Имя пакета:: название src.rpm ( => имени репозитория в /gears) Действия: * ./ автоматическое * {i} требуется исследование * <!> ''может'' закончится неуспешно (текст после <!> описывает обработку неуспеха, по умолчанию -- останов + оповещение) * {2} второстепенное Общий workflow: 1. Добавление пакета * Создание нового репозитория * настройка autobuild * создание минимального хранилища "версии 0" * стартовое обновление исходников * Импорт существующего репозитория * {2} автоматическая конвертация * Типовые watchfile для sf, gh, gc, g.a... ({i} * типовые репозитории?) 1. ./ Синхронизация 1. с целевым хранилищем 1. {2} с devel-веткой <!> ( 1. ./ Проверка апстрима 1. выяснение апстримной версий <!> * несколько исходников * VCS 1. выяснение текущей версии * несколько исходников 1. сравнение версий (возможно, нестрогое) 1. ./ Обновление исходников 1. подготовка сборочной версии старых исходников (например, создание временной ветки) 1. получение исходников из апстрим <!> 1. обновление старых исходников новыми <!> 1. модификация служебных файлов (*.spec, .gear/* ...) 1. маркировка (например, commmit + tag) 1. ./ Сборка обновлённого пакета 1. Тестовая сборка <!> * «Домашняя» (см. [[#homebrew|Инфраструктура «домашней» сборки]]) * последовательность сборки * нстройка apt.conf * критерии успешности 1. Втягивание маркированных исходнков 1. Тестирование * {i} маркировка тестированных 1. Отсылка в g.a и на сборку <<Anchor(homebrew)>> === Инфраструктура «домашней» сборки === * Запуск по cron .... TODO * Доступ к бинарному репозиторию * Подготовка apt.conf * ... === Следствия === * Разделение майнтейнера на активного пользователя (тестера) и сборщика. Разумеется, лучше в одном лице, но... * Внешнее автоматическое тестирование |
Огромные человекоподобные роботы
Workflow
Общие понятия (на примере git.alt):
- Целевое хранилище
- название ветки в /gears (sisyphus)
- Пакет
- git-репозиторий на git.alt
- Схема репозитория
способ организации на git.alt (http://www.altlinux.org/%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE_%D0%BF%D0%BE_gear)
- Имя пакета
название src.rpm ( => имени репозитория в /gears)
Действия:
- ./ автоматическое
требуется исследование
может закончится неуспешно (текст после
описывает обработку неуспеха, по умолчанию -- останов + оповещение)
второстепенное
Общий workflow:
- Добавление пакета
- Создание нового репозитория
- настройка autobuild
- создание минимального хранилища "версии 0"
- стартовое обновление исходников
- Импорт существующего репозитория
автоматическая конвертация
- Типовые watchfile для sf, gh, gc, g.a... ({i} * типовые репозитории?)
- Создание нового репозитория
- ./ Синхронизация
- с целевым хранилищем
с devel-веткой
(
- ./ Проверка апстрима
выяснение апстримной версий
- несколько исходников
- VCS
- выяснение текущей версии
- несколько исходников
- сравнение версий (возможно, нестрогое)
- ./ Обновление исходников
- подготовка сборочной версии старых исходников (например, создание временной ветки)
получение исходников из апстрим
обновление старых исходников новыми
- модификация служебных файлов (*.spec, .gear/* ...)
- маркировка (например, commmit + tag)
- ./ Сборка обновлённого пакета
Тестовая сборка
«Домашняя» (см. Инфраструктура «домашней» сборки)
- последовательность сборки
- нстройка apt.conf
- критерии успешности
- Втягивание маркированных исходнков
- Тестирование
маркировка тестированных
- Отсылка в g.a и на сборку
Инфраструктура «домашней» сборки
- Запуск по cron .... TODO
- Доступ к бинарному репозиторию
- Подготовка apt.conf
- ...
Следствия
- Разделение майнтейнера на активного пользователя (тестера) и сборщика. Разумеется, лучше в одном лице, но...
- Внешнее автоматическое тестирование