【发布时间】:2016-10-26 09:12:48
【问题描述】:
我有一个厨师食谱来创建一个部署用户。运行kitchen converge 时正在创建用户。尝试为用户创建 .ssh 文件夹时失败,因为用户的主目录不存在。 Parent directory /home/deploy does not exist, cannot create /home/deploy/.ssh。
cookbooks/main/recipes/user.rb
user deploy do
action :create
comment 'Application deploy user'
home "/home/#{node['deploy_user']}"
shell '/bin/bash'
system true
supports manage_home: true
end
directory "/home/#{node['deploy_user']}/.ssh" do
mode 0700
owner node['deploy_user']
group node['deploy_user']
end
template "/home/#{node['deploy_user']}/.ssh/authorized_keys" do
mode 0600
owner node['deploy_user']
source 'authorized_keys.erb'
end
.kitchen.yml
---
driver:
name: vagrant
provisioner:
name: chef_solo
platforms:
- name: ubuntu-14.04
- name: centos-7.1
suites:
- name: default
run_list:
- recipe[main::default]
attributes:
【问题讨论】:
标签: chef-infra chef-recipe chef-solo test-kitchen