Quelle est la bonne façon de faire des add-apt-repository via un Chef?
Je suis en train d'apprendre le Chef et je vais faire maintenant pour Ubuntu:
execute "add-apt-repository ppa:#{node[:some_repo]}" do
user "root"
end
execute "apt-get update" do
user "root"
end
mais peut être il y a une meilleure ("chef" de style?) façon de le faire. Aussi, je m'inquiète de ce que, parfois, add-apt-repository attend touche "Entrée" sur l'exécution, de sorte que cette approche pourrait ne pas fonctionner ainsi. Quelle est la bonne façon de le faire?
Edit: je n'ai que des ppa lien format: ppa:quelque chose/utilisateur
Vous devez vous connecter pour publier un commentaire.
Si vous utilisez chef v12.9 et au-dessus, Utilisez le apt_repository des ressources pour la gestion de l'apt. Si vous utilisez chef inférieur v12.8, vous pouvez utiliser APT livre de recettes fourni par le Chef de Logiciels, Inc. Ce livre de cuisine fournit même LWRP
Voici l'exemple d'utilisation de la ressource:
node['lsb']['codename']
n'est pas toujours disponible. Le lsb nœud est vide lors de l'exécution dans VirtualBox par exemple. Toutes les suggestions sur la façon dont nous pouvons déterminer la distribution de manière fiable?Il y a aussi un tiers apt livre de recettes qui fournit un
ppa
méthode:https://github.com/sometimesfood/chef-apt-repo
Idéalement, cette fonctionnalité devrait être ajouté à la opscode apt livre de cuisine.
user/repo
et elle travaillera avecapt_repository
.L'ajout d'une autre réponse car je viens de me suis retrouvé ici.
Si vous venez d'avoir l'adresse URL d'une clé et ne pas la clé de signature, vous pouvez simplement spécifier l'URL dans l'attribut clé:
De la documentation
Une remarque supplémentaire est que une fois que vous avez ajouté les apt livre de cuisine, vous devez ajouter une dépendance à l'instruction de votre livre de recettes.
Mise à jour des métadonnées.rb (qui devrait être à la base de votre livre de recettes dir)
Cela permettra d'éviter le mode de défaillance où un nœud ne peut pas mettre à jour car il n'a pas l'apt livre de cuisine dans la liste.