Mock é o que você está procurando. É baseado no Mach e é empacotado em EPEL . Eu uso-o regularmente para criar pacotes RPM para e no RHEL e no Fedora.
Eu gostaria de saber se existe algum utilitário como o pbuilder
do Debian, para construir pacotes RPM no RedHat usando um ambiente limpo ( chroot
).
Eu encontrei mach que tem suporte para algo assim, mas em um ambiente Debian, e não suporte RHEL. Eu preciso de algo que seja executado no RHEL 5.5.
O OpenSUSE Build System suporta múltiplas distribuições e suporta o ambiente que você descreve, um ambiente de área restrita para garantir que as compilações sejam consistentes e confiáveis:
Você também pode instalar o OpenSUSE Build System como um appliance. Esta é uma imagem de VM Linux independente (as versões VMware, QEmu ou ISO são suportadas) que contêm a pilha inteira para configurar seus próprios farms de construção:
mach suporta o RHEL com um arquivo de configuração apropriado, ex:
V = '5Server' # distro version
VS = '5' # 'short' version
A = 'i386' # architecture
AS = '' # 'short' version of arch
DIST = 'rhel-%s-%s' % (V, A)
### RHEL flavours
yumsources[DIST] = {
'os': rhelyum + '/%s/%s/os' % (V, A),
'updates': rhelyum + '/%s/%s/updates' % (V, A),
}
# RHEL
packages['%s' % DIST] = {
'dir': DIST,
'minimal': 'bash glibc redhat-release',
'base': 'coreutils findutils openssh-server',
'build': 'dev redhat-rpm-config rpm-build make gcc gcc-c++ tar gzip ' +
'patch unzip bzip2 diffutils cpio elfutils which',
}
sourceslist['%s' % DIST] = {
DIST: ('os', 'updates', )
}
config['%s' % DIST] = {
'runuser': '/sbin/runuser',
'macros': { 'dist': '.el' + VS, 'rhel': VS, 'redhat': VS},
}
aliases['%s' % DIST] = ('el' + VS + AS, )
Se você quiser seguir todo o caminho, você pode configurar o Koji , que usa o Mock (da resposta de cdgagne) como um de seus componentes. Koji é o que cria o Fedora e pode ser baixado gratuitamente em seu site. Afaik, o Fedora executa o Koji no RHEL, então deve ser bom para seus propósitos.