Puppet: como instalar o pacote git do Debian wheezy-backports?

2

Estou usando o módulo Apt ( link ) e adicionei uma entrada para o repositório de backports wheezy do Debian:

apt::source { 'wheezy-backports':
    location    => 'http://ftp.de.debian.org/debian',
    release     => 'wheezy-backports',
    repos       => 'main',
    include_deb => true,
    include_src => true,
    notify      => Exec['apt-get-update'],
}

Eu posso instalar pacotes que estão disponíveis em wheezy-backports, mas não no repositório padrão, então acho que a configuração está correta. A instalação manual de backports usando apt-get install git -t wheezy-backports também funciona.

Mas como forçar o Puppet a recuperar um pacote de wheezy-backports em vez do repositório padrão? Especificamente, eu quero instalar o git-1.9.1-1 que está em backports wheezy mas

package { "git": ensure => "1:1.9.1-1~bpo70+2", }

falha.

package { "git": ensure => "latest", }

instalará apenas a versão mais recente do repositório padrão, mas não a versão mais recente do backport.

Por favor, informe como forçar o Puppet a recuperar um pacote específico do repositório wheezy-backports.

    
por nn4l 01.10.2015 / 12:56

1 resposta

3

A partir da documentação do Debian backports , você precisa especificar manualmente o repositório quando você instalar via CLI, porque os pacotes portados são preso com uma prioridade mais alta que os pacotes padrão.

De acordo com esta resposta ServerFault , você precisará fixar o repositório inteiro ou pacotes individuais para usar backports.

Com o módulo apt do Puppetlabs, você pode fazer isso usando a classe apt::backports , que adicionará o repositório backport e soltará um arquivo pin:

class { 'apt::backports':
  location => 'http://ftp.de.debian.org/debian',
  release  => 'wheezy-backports',
  repos    => 'main',
  pin      => 500,
}

Se você não quiser fixar todo o repositório, pode fixar pacotes individuais usando apt::pin (o exemplo abaixo, você pode precisar ajustá-lo):

apt::pin { 'backports_git':
  packages => 'git',
  priority => 500,
  release  => 'main',
}

Mais documentação está aqui: link

    
por 01.10.2015 / 13:14