У меня есть рецепт шеф-повара, написанный для создания трех пользователей, добавление их в группу и запись их в файл sudoers.Файл атрибутов шеф-повара
group "usergroup" do
gid 2000
end
print "User1 or User2 or User3?"
env=$stdin.gets.chomp
case env
when "User1"
user "User1" do
uid 150
gid "usergroup"
home "/home/User1"
shell "/bin/bash"
end
directory "/home/User1" do
owner "User1"
group "usergroup"
mode "0777"
action :create
end
execute "echo" do
command "echo 'User1 ALL=(ALL) ALL' >> /etc/sudoers"
not_if "grep -F 'User1 ALL=(ALL) ALL' /etc/sudoers"
end
when "User2"
user "User2" do
uid 250
gid "usergroup"
home "/home/User2"
shell "/bin/bash"
end
directory "/home/User2" do
owner "User2"
group "usergroup"
mode "0777"
action :create
end
execute "echo" do
command "echo 'User2 ALL=(ALL) ALL' >> /etc/sudoers"
not_if "grep -F 'User2 ALL=(ALL) ALL' /etc/sudoers"
end
when "User3"
user "User3" do
uid 350
gid "usergroup"
home "/home/User3"
shell "/bin/bash"
end
directory "/home/User3" do
owner "User3"
group "usergroup"
mode "0777"
action :create
end
execute "echo" do
command "echo 'User3 ALL=(ALL) ALL' >> /etc/sudoers"
not_if "grep -F 'User3 ALL=(ALL) ALL' /etc/sudoers"
end
end
Я новенькая Chef, и мне нужна помощь в написании подходящего файла атрибутов для этого рецепта (/cookbook/User/attributes/default.rb). Я пробовал все, что знаю, но для меня ничего не получается. Также я хотел бы знать, могут ли инструкции case быть включены в файл атрибута.
Примечание: Я работаю поваром в местном режиме.
Я не уверен, что вы пытаетесь выполнить. Шеф-повар Sidenote не нацелен на интерактивный процесс. Если вы хотите создать три пользователя в цикле, это нормально. Если вам нужны атрибуты, что бы вы поместили в атрибуты (имена пользователей? Uid и т. Д.) – Tensibai
Это именно то, что я пытаюсь задать. Я не знаю, что включить в атрибуты. Я создал интерактивный процесс только сейчас. Я удалю его позже из рецепта. Я просто хочу знать, как я должен написать файл атрибутов для рецепта, подобного этому. Или я должен сам изменить рецепт? –
Хорошо, см. Атрибут как переменную, какие свойства вы хотели бы быть переменными? Я могу дать ответ, но я действительно не уверен, что это то, что вы хотите. Может быть, вы можете объяснить, каков ваш ожидаемый результат. – Tensibai