Назад | Перейти на главную страницу

Ошибка марионетки в уже установленном пакете на centos

Я впервые использую марионетку на CentOS.

В одном из моих файлов .pp есть следующее:

package {"openjdk-6-jdk":
    ensure => installed,
}

При применении возникает следующая ошибка:

Ошибка: выполнение '/ usr / bin / yum -d 0 -e 0 -y install openjdk-6-jdk' вернуло 1: Ошибка: нечего делать

Ошибка: / Stage [main] / Play / Package [openjdk-6-jdk] / sure: изменение с отсутствующего на настоящее не удалось: выполнение '/ usr / bin / yum -d 0 -e 0 -y install openjdk-6- jdk 'вернул 1: Ошибка: нечего делать

Замена установленной последней версии дает тот же результат.

package {"openjdk-6-jdk":
    ensure => latest,
}

Как я могу сказать марионетке, что ням, возвращающий 1, это нормально?

Я полагал, что адаптер марионетки yum уже знает, как обрабатывать этот код результата.

Это кажется супер простым и должно «просто работать».

Это на Centos 6.3 с марионеткой 3.1.1-1.el6

Как написано в моем комментарии, имя пакета было неправильным. Вот как я исправил его для установки в Ubuntu и CentOS.

package {"openjdk-6-jdk":
 ensure => installed,
 name => $operatingsystem ? {
   Ubuntu => "openjdk-6-jdk",
   CentOS => "java-1.6.0-openjdk",
 }
}