itamae-kitchen / itamae

Configuration management tool inspired by Chef, but simpler and lightweight. Formerly known as Lightchef.

Home Page:https://itamae.kitchen/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Permission denied occurs when use the "template resource"

yuu opened this issue · comments

commented

I have a problem Permission denied occurs when use the 'template resource'.
Why permission denied ?

Environment:

Host: macOS
Target: ubuntu14.04 on Vagrant(ubuntu/trusty64)
- ruby: 2.0.0p384 (2014-01-12) [x86_64-linux-gnu]
- itamae: 1.9.9 or 1.9.6

error log:

vagrant@vagrant-ubuntu-trusty-64:/vagrant$ itamae local cookbooks/docker/ubuntu.rb  -l debug
INFO : Starting Itamae...

...

DEBUG :     template[/etc/apt/sources.list.d/docker.list]
DEBUG :       template[/etc/apt/sources.list.d/docker.list] action: create
DEBUG :         (in pre_action)
DEBUG :         Executing `sudo -H -u root -- /bin/sh -c cd\ \~root\ \;\ test\ -f\ /etc/apt/sources.list.d/docker.list`...
DEBUG :           exited with 1
DEBUG :         Executing `sudo -H -u root -- /bin/sh -c cd\ \~root\ \;\ touch\ /tmp/itamae_tmp/1468851713.8704255`...
DEBUG :           exited with 0
DEBUG :         Executing `sudo -H -u root -- /bin/sh -c cd\ \~root\ \;\ chmod\ 0600\ /tmp/itamae_tmp/1468851713.8704255`...
DEBUG :           exited with 0
DEBUG :         Sending a file from '/tmp/itamae20160718-31924-1fi2vx7' to '/tmp/itamae_tmp/1468851713.8704255'...
/usr/lib/ruby/2.0.0/fileutils.rb:1375:in `initialize': Permission denied - /tmp/itamae_tmp/1468851713.8704255 (Errno::EACCES)
        from /usr/lib/ruby/2.0.0/fileutils.rb:1375:in `open'
        from /usr/lib/ruby/2.0.0/fileutils.rb:1375:in `block in copy_file'
        from /usr/lib/ruby/2.0.0/fileutils.rb:1374:in `open'
        from /usr/lib/ruby/2.0.0/fileutils.rb:1374:in `copy_file'
        from /usr/lib/ruby/2.0.0/fileutils.rb:477:in `copy_file'
        from /usr/lib/ruby/2.0.0/fileutils.rb:394:in `block in cp'
        from /usr/lib/ruby/2.0.0/fileutils.rb:1552:in `block in fu_each_src_dest'
        from /usr/lib/ruby/2.0.0/fileutils.rb:1568:in `fu_each_src_dest0'
        from /usr/lib/ruby/2.0.0/fileutils.rb:1550:in `fu_each_src_dest'
        from /usr/lib/ruby/2.0.0/fileutils.rb:393:in `cp'
        from /var/lib/gems/2.0.0/gems/specinfra-2.57.4/lib/specinfra/backend/exec.rb:25:in `send_file'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/backend.rb:109:in `send_file'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/file.rb:184:in `send_tempfile'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/file.rb:32:in `pre_action'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/template.rb:13:in `pre_action'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/base.rb:180:in `block (2 levels) in run_action'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/logger.rb:10:in `with_indent'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/logger.rb:17:in `with_indent_if'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/base.rb:178:in `block in run_action'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:29:in `call'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:29:in `_event_with_block'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:13:in `event'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/base.rb:168:in `run_action'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/base.rb:137:in `block (3 levels) in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/base.rb:136:in `each'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/base.rb:136:in `block (2 levels) in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/logger.rb:10:in `with_indent'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/logger.rb:17:in `with_indent_if'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/base.rb:127:in `block in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:29:in `call'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:29:in `_event_with_block'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:13:in `event'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/resource/base.rb:124:in `run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe_children.rb:58:in `block in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe_children.rb:57:in `each'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe_children.rb:57:in `run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe.rb:66:in `block (2 levels) in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/logger.rb:10:in `with_indent'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe.rb:65:in `block in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:29:in `call'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:29:in `_event_with_block'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:13:in `event'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe.rb:64:in `run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe_children.rb:58:in `block in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe_children.rb:57:in `each'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe_children.rb:57:in `run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe.rb:66:in `block (2 levels) in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/logger.rb:10:in `with_indent'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe.rb:65:in `block in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:29:in `call'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:29:in `_event_with_block'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/handler_proxy.rb:13:in `event'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe.rb:64:in `run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe_children.rb:58:in `block in run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe_children.rb:57:in `each'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/recipe_children.rb:57:in `run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/runner.rb:61:in `run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/runner.rb:14:in `run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/cli.rb:126:in `run'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/lib/itamae/cli.rb:38:in `local'
        from /var/lib/gems/2.0.0/gems/thor-0.19.1/lib/thor/command.rb:27:in `run'
        from /var/lib/gems/2.0.0/gems/thor-0.19.1/lib/thor/invocation.rb:126:in `invoke_command'
        from /var/lib/gems/2.0.0/gems/thor-0.19.1/lib/thor.rb:359:in `dispatch'
        from /var/lib/gems/2.0.0/gems/thor-0.19.1/lib/thor/base.rb:440:in `start'
        from /var/lib/gems/2.0.0/gems/itamae-1.9.9/bin/itamae:4:in `<top (required)>'
        from /usr/local/bin/itamae:23:in `load'
        from /usr/local/bin/itamae:23:in `<main>'

ubuntu.rb:

[
'apt-transport-https',
'ca-certificates',
].each do |pkg|
    package pkg do
        user 'root'
        options '--no-install-recommends'
    end
end

execute 'Add GPG key' do
    user 'root'
    command '
    apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D'
end

case node[:platform_version]
when '12.04'
    ver = 'precise'
when '14.04'
    ver = 'trusty'
when '15.10'
    ver = 'wily'
when '16.04'
    ver = 'xenial'
end
template '/etc/apt/sources.list.d/docker.list' do
    user 'root'
    action :create
    source "templates/docker.list.erb"
    variables(version: "#{ver}")
end

templates/docker.list.erb:

deb https://apt.dockerproject.org/repo ubuntu-<%= @version %> main

Gemfile.lock:

GEM
  remote: https://rubygems.org/
  specs:
    ansi (1.5.0)
    hashie (3.4.4)
    itamae (1.9.9)
      ansi
      hashie
      schash (~> 0.1.0)
      specinfra (>= 2.37.0, < 3.0.0)
      thor
    itamae-plugin-recipe-homebrew (0.0.3)
      itamae (~> 1.5)
    net-scp (1.2.1)
      net-ssh (>= 2.6.5)
    net-ssh (3.1.1)
    net-telnet (0.1.1)
    schash (0.1.2)
    sfl (2.2)
    specinfra (2.57.4)
      net-scp
      net-ssh (>= 2.7, < 4.0)
      net-telnet
      sfl
    thor (0.19.1)

PLATFORMS
  ruby

DEPENDENCIES
  itamae
  itamae-plugin-recipe-homebrew

BUNDLED WITH
   1.12.4

Fixed at v1.10.3