Как мне установить частный репозиторий apt, который может поддерживать несколько версий?

Я смотрю, как настроить частный репозиторий apt (на 10.04 LTS), который может поддерживать несколько версий.

Я понимаю, что на сервере не может быть установлено несколько версий пакета. Это чисто для среды разработки, где мы хотим иметь возможность протестировать несколько версий перед выпуском их в репозиторий apt.

Я знаю, что вы можете иметь несколько версий, указав номер версии в имени пакета, однако я хочу добиться противоположного, поддерживая несколько версий одного и того же имени пакета.

например. packagename_1.0_all.deb и packagename_2.0_all.deb, а не packagename-1.0_1.0_all.deb и packagename-2.0_2.0_all.deb

Для тех, кто знаком с автоматизированным развертыванием Puppet - мы можем указать, что версия пакета, которую мы хотим на сервере (с тегом sure, использующим то же имя пакета).

Я попробовал debmarshal от Google, описанный в http://wiki.debian.org/HowToSetupADebianRepository , но не смог заставить его работать из-за отсутствия документации.

9
задан 19.05.2020, 09:19

2 ответа

Мне понадобилось мульти-версионное репо по тем же причинам, что и вы, и вот чем я закончил:

apt-get install apache2 dpkg-dev
mkdir -p /var/www/repo/binary

Затем создайте update-repo.sh, который обновит ваше репо с информацией о пакетах [ 117]

#!/bin/bash
cd /var/www/repo
dpkg-scanpackages -m binary /dev/null | gzip -9c > /var/www/repo/binary/Packages.gz

Поместите ваши файлы .deb в / var / www / repo / binary и запустите update-repo.sh

На остальных машинах:

echo "deb http://myserver/repo binary" > /etc/apt/sources.list.d/myrepo.list
apt-get update
[1110 ] и т. д. ...

Волшебство происходит из-за -m при запуске dpkg-scanpackages. Без -m только одна версия указана в Packages.gz

Я не пробовал ее, но это должно быть тривиально, сделать то же самое для отдельных суб-репо, как предложил hbdgaf.

0
ответ дан 19.05.2020, 09:20

Разместите его под другим именем дистрибутива. Ясный и тестирование, например. Затем измените свои записи в вашем тестовом окне
с: deb http://homegrown.local/ubuntu lucid main
на: deb http://homegrown.local/ubuntu testing main

0
ответ дан 19.05.2020, 09:20

Теги

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