Как подготовить автоматически обновляемый PPA?

Как подготовить автоматически обновляемый PPA?

У меня есть исходный код в репозитории SVN, который обновляется ежедневно.

Есть ли способ поместить этот исходный пакет в PPA, который обновится из ствола SVN и соберет для меня новые пакеты?

Или мне нужен собственный механизм для отправки новых исходных пакетов для каждого обновления из основной ветки?

решение1

Это можно легко сделать на Launchpad. То, что вы ищете, называетсярецепт исходного пакета.

Чтобы настроить это и заставить его собирать исходники каждый день, сначала нужно зарегистрировать проект на Launchpad, если он еще не зарегистрирован. После этого перейдите на страницу проекта и нажмите «настроить ветвь проекта»:

введите описание изображения здесь

Теперь вам нужно указать Launchpad, где находится репозиторий SVN. Нажмите «Импортировать ветку, размещенную где-то еще», выберите «SVN» и введите URL ветки SVN. Дайте ветке имя и нажмите «Обновить»:

введите описание изображения здесь

Теперь у вас есть содержимое репозитория SVN, которое импортируется в Launchpad время от времени (обычно чаще, чем раз в день). Следующий шаг — создать рецепт исходного пакета, который собирает пакет из исходного кода каждый день. Здесь есть два основных варианта:

  • Сохраните файлы упаковки Debian.врепозиторий SVN — файлы должны находиться в папке с именем debian.
  • Создайте отдельную ветку Launchpad, содержащую файлы упаковки Debian, и дайте Launchpad возможность объединить их перед сборкой пакета.

Поскольку первый вариант самый простой, я бы рекомендовал пойти по этому пути. Чтобы настроить ежедневные сборки, перейдите на страницу вашего проекта на Launchpad и нажмите ссылку "код" в самом верху. Нажмите на ветку, содержащую исходный код, а затем нажмите "создать рецепт упаковки":

введите описание изображения здесь

Оттуда просто примите все значения по умолчанию и нажмите «создать рецепт». Вот и все! Ваши пакеты будут собираться каждый день (при условии наличия новых ревизий) и помещаться в PPA, который вы указали при создании рецепта.

Использованная литература:

Связанный контент