Как мне установить частный репозиторий 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 , но не смог заставить его работать из-за отсутствия документации.

10
задан 8 April 2014 в 00:36

2 ответа

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

0
ответ дан 8 April 2014 в 00:36

Мне был нужен мультиимеющий версию repo по тем же причинам как Вы, и это - то, с чем я закончил:

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

Затем создайте update-repo.sh это обновит Ваш repo с информацией пакетов

#!/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 и выполните обновление-repo.sh

На остальной части машин:

echo "deb http://myserver/repo binary" > /etc/apt/sources.list.d/myrepo.list
apt-get update

и т.д. и т.д...

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

Я не попробовал его, но это должно быть тривиально, чтобы сделать то же для отдельного sub-repos, как предложенный hbdgaf.

8
ответ дан 8 April 2014 в 00:36

Другие вопросы по тегам:

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