Without analyzing what's going wrong I would take the path of least
resistance. Enabla password less (NOPASSWORD) for the user (ssh_username)
you are using and then run chef with sudo. That should work without any
problems.

And if you don't want passwordless sudo just remove it after chef have been
executed.

On Sat, Aug 31, 2019, 19:18 Rhythm Chopra <[email protected]> wrote:

> I have already tried execute command overload to the following.
>
> "execute_command": "echo password | sudo -S bash {{ .Script }}"
>
> But then my build fails with following logs.
>
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 opening new ssh session
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 Starting remote scp
>> process:  scp -vt /tmp/packer-chef-solo
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 Started SCP session,
>> beginning transfers...
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 Copying input data into
>> temporary file so we can read the length
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 [DEBUG] scp: Uploading
>> solo.rb: perms=C0644 size=58
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 SCP session complete,
>> closing stdin pipe.
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 Waiting for SSH session
>> to complete.
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 scp stderr (length 23):
>> Sink: C0644 58 solo.rb
>> 2019/08/31 20:17:06 ui:     virtualbox-iso: Creating JSON attribute file
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 [INFO] 619 bytes written
>> for 'uploadData'
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 opening new ssh session
>> 2019/08/31 20:17:06 [INFO] 619 bytes written for 'uploadData'
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 Starting remote scp
>> process:  scp -vt /tmp/packer-chef-solo
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 Started SCP session,
>> beginning transfers...
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 Copying input data into
>> temporary file so we can read the length
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 [DEBUG] scp: Uploading
>> node.json: perms=C0644 size=619
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 SCP session complete,
>> closing stdin pipe.
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 Waiting for SSH session
>> to complete.
>> 2019/08/31 20:17:06 packer: 2019/08/31 20:17:06 scp stderr (length 26):
>> Sink: C0644 619 node.json
>> 2019/08/31 20:17:06 [INFO] (telemetry) ending chef-solo
>> 2019/08/31 20:17:06 [INFO] (telemetry) found error: Error executing Chef:
>> template: root:1:31: executing "root" at <.Script>: can't evaluate field
>> Script in type *chefsolo.ExecuteTemplate
>>
>>
>
> Please suggest
>
> Thanks,
> Rhythm
>
>
> On Saturday, August 31, 2019 at 8:09:02 PM UTC+3, Rhythm Chopra wrote:
>>
>> Hi,
>> I'm struggling with a packer build for a long time now. So I'm trying to
>> build Ubuntu 1404 server image with Packer using chef provisioner.
>> Initially build was getting stuck at the following command after installing
>> chef successfully,
>>
>>> 2019/08/31 17:36:04 ui: ==> virtualbox-iso: Provisioning with chef-solo
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: Installing Chef...
>>> 2019/08/31 17:36:04 packer: 2019/08/31 17:36:04 opening new ssh session
>>> 2019/08/31 17:36:04 packer: 2019/08/31 17:36:04 starting remote command:
>>> curl -L https://omnitruck.chef.io/install.sh | { echo 'qwerty'; cat -;
>>> } | sudo -S bash -s -- -v 13.8.5
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: % Total    % Received %
>>> Xferd  Average Speed   Time    Time     Time  Current
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: Dload  Upload   Total
>>> Spent    Left  Speed
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: 0     0    0     0    0
>>> 0      0      0 --:--:-- --:--:-- --:--:--     0[sudo] password for
>>> metasploitable3: no talloc stackframe at ../source3/param/loadparm.c:4864,
>>> leaking memory
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: 100 23103  100 23103
>>> 0     0   166k      0 --:--:-- --:--:-- --:--:--  167k
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: ubuntu 14.04 x86_64
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: Getting information for chef
>>> stable 13.8.5 for ubuntu...
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: downloading
>>> https://omnitruck.chef.io/stable/chef/metadata?v=13.8.5&p=ubuntu&pv=14.04&m=x86_64
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: to file
>>> /tmp/install.sh.1749/metadata.txt
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: trying wget...
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: sha1
>>> 1ecb70effcf557dbac0d0de528bbef6937f9c581
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: sha256
>>> ce0ff3baf39c8c13ed474104928e7e4568a4997a1d5797cae2b2ba3ee001e3a8
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: url
>>> https://packages.chef.io/files/stable/chef/13.8.5/ubuntu/14.04/chef_13.8.5-1_amd64.deb
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: version    13.8.5
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: downloaded metadata file
>>> looks valid...
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: downloading
>>> https://packages.chef.io/files/stable/chef/13.8.5/ubuntu/14.04/chef_13.8.5-1_amd64.deb
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: to file
>>> /tmp/install.sh.1749/chef_13.8.5-1_amd64.deb
>>> 2019/08/31 17:36:04 ui:     virtualbox-iso: trying wget...
>>> 2019/08/31 17:36:45 ui:     virtualbox-iso: Comparing checksum with
>>> sha256sum...
>>> 2019/08/31 17:36:46 ui:     virtualbox-iso: Installing chef 13.8.5
>>> 2019/08/31 17:36:46 ui:     virtualbox-iso: installing with dpkg...
>>> 2019/08/31 17:36:46 ui:     virtualbox-iso: Selecting previously
>>> unselected package chef.
>>> 2019/08/31 17:36:46 ui:     virtualbox-iso: (Reading database ... 68348
>>> files and directories currently installed.)
>>> 2019/08/31 17:36:46 ui:     virtualbox-iso: Preparing to unpack
>>> .../chef_13.8.5-1_amd64.deb ...
>>> 2019/08/31 17:36:46 ui:     virtualbox-iso: Unpacking chef (13.8.5-1) ...
>>> 2019/08/31 17:36:52 ui:     virtualbox-iso: Setting up chef (13.8.5-1)
>>> ...
>>> 2019/08/31 17:36:52 ui:     virtualbox-iso: Thank you for installing
>>> Chef!
>>> 2019/08/31 17:36:52 packer: 2019/08/31 17:36:52 [INFO] RPC endpoint:
>>> Communicator ended with: 0
>>> 2019/08/31 17:36:52 [INFO] 0 bytes written for 'stderr'
>>> 2019/08/31 17:36:52 [INFO] 2006 bytes written for 'stdout'
>>> 2019/08/31 17:36:52 [INFO] RPC client: Communicator ended with: 0
>>> 2019/08/31 17:36:52 [INFO] RPC endpoint: Communicator ended with: 0
>>> 2019/08/31 17:36:52 packer: 2019/08/31 17:36:52 [INFO] 2006 bytes
>>> written for 'stdout'
>>> 2019/08/31 17:36:52 packer: 2019/08/31 17:36:52 [INFO] 0 bytes written
>>> for 'stderr'
>>> 2019/08/31 17:36:52 packer: 2019/08/31 17:36:52 [INFO] RPC client:
>>> Communicator ended with: 0
>>> 2019/08/31 17:36:52 ui:     virtualbox-iso: Creating directory:
>>> /tmp/packer-chef-solo
>>> 2019/08/31 17:36:52 packer: 2019/08/31 17:36:52 opening new ssh session
>>> 2019/08/31 17:36:52 packer: 2019/08/31 17:36:52 starting remote command:
>>> mkdir -p '/tmp/packer-chef-solo'
>>>
>>>
>> Looks like it was waiting for password because `sudo` was being used. So
>> I added the flag
>> prevent_sudo= true
>>
>> Now, the above steps completed properly, but later my build fails at
>>
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 opening new ssh session
>>> 2019/08/31 17:36:53 [INFO] 58 bytes written for 'uploadData'
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 Starting remote scp
>>> process:  scp -vt /tmp/packer-chef-solo
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 Started SCP session,
>>> beginning transfers...
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 Copying input data into
>>> temporary file so we can read the length
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 [DEBUG] scp: Uploading
>>> solo.rb: perms=C0644 size=58
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 SCP session complete,
>>> closing stdin pipe.
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 Waiting for SSH session
>>> to complete.
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 scp stderr (length 23):
>>> Sink: C0644 58 solo.rb
>>> 2019/08/31 17:36:53 ui:     virtualbox-iso: Creating JSON attribute file
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 [INFO] 619 bytes written
>>> for 'uploadData'
>>> 2019/08/31 17:36:53 [INFO] 619 bytes written for 'uploadData'
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 opening new ssh session
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 Starting remote scp
>>> process:  scp -vt /tmp/packer-chef-solo
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 Started SCP session,
>>> beginning transfers...
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 Copying input data into
>>> temporary file so we can read the length
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 [DEBUG] scp: Uploading
>>> node.json: perms=C0644 size=619
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 SCP session complete,
>>> closing stdin pipe.
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 Waiting for SSH session
>>> to complete.
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 scp stderr (length 26):
>>> Sink: C0644 619 node.json
>>> 2019/08/31 17:36:53 ui:     virtualbox-iso: Executing Chef: chef-solo
>>> --no-color -c /tmp/packer-chef-solo/solo.rb -j
>>> /tmp/packer-chef-solo/node.json
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 opening new ssh session
>>> 2019/08/31 17:36:53 packer: 2019/08/31 17:36:53 starting remote command:
>>> chef-solo --no-color -c /tmp/packer-chef-solo/solo.rb -j
>>> /tmp/packer-chef-solo/node.json
>>> 2019/08/31 17:36:54 ui:     virtualbox-iso: Starting Chef Client,
>>> version 13.8.5
>>> 2019/08/31 17:36:56 ui:     virtualbox-iso: resolving cookbooks for run
>>> list: ["metasploitable::users", "metasploitable::mysql",
>>> "metasploitable::apache_continuum", "metasploitable::apache",
>>> "metasploitable::php_545", "metasploitable::phpmyadmin",
>>> "metasploitable::proftpd", "metasploitable::docker",
>>> "metasploitable::samba", "metasploitable::sinatra",
>>> "metasploitable::unrealircd", "metasploitable::chatbot",
>>> "metasploitable::payroll_app", "metasploitable::readme_app",
>>> "metasploitable::cups", "metasploitable::drupal", "metasploitable::knockd",
>>> "metasploitable::iptables", "metasploitable::flags"]
>>> 2019/08/31 17:36:57 ui:     virtualbox-iso: Synchronizing Cookbooks:
>>> 2019/08/31 17:36:57 ui:     virtualbox-iso: - metasploitable (0.1.0)
>>> 2019/08/31 17:36:57 ui:     virtualbox-iso: - docker (4.9.2)
>>> 2019/08/31 17:36:57 ui:     virtualbox-iso: - mysql (8.2.0)
>>> 2019/08/31 17:36:57 ui:     virtualbox-iso: Installing Cookbook Gems:
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso:
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Running handlers:
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: [2019-08-31T17:37:19+03:00]
>>> ERROR: Running exception handlers
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Running handlers complete
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: [2019-08-31T17:37:19+03:00]
>>> ERROR: Exception handlers complete
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Chef Client failed. 0
>>> resources updated in 20 seconds
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: [2019-08-31T17:37:19+03:00]
>>> FATAL: Stacktrace dumped to
>>> /tmp/packer-chef-solo/local-mode-cache/cache/chef-stacktrace.out
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: [2019-08-31T17:37:19+03:00]
>>> FATAL: Please provide the contents of the stacktrace.out file if you file a
>>> bug report
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: [2019-08-31T17:37:19+03:00]
>>> ERROR: Expected process to exit with [0], but received '5'
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: ---- Begin output of bundle
>>> install ----
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: STDOUT: Fetching gem
>>> metadata from https://www.rubygems.org/..............
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Fetching version metadata
>>> from https://www.rubygems.org/.
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Resolving dependencies...
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Using bundler 1.15.4
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Fetching excon 0.66.0
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Using multi_json 1.13.1
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso:
>>> Bundler::SudoNotPermittedError: Bundler requires sudo access to install at
>>> the
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: moment. Try installing
>>> again, granting Bundler sudo access when prompted, or
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: installing into a different
>>> path.
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: An error occurred while
>>> installing excon (0.66.0), and Bundler cannot continue.
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Make sure that `gem install
>>> excon -v '0.66.0'` succeeds before bundling.
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso:
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: In Gemfile:
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: docker-api was resolved to
>>> 1.34.2, which depends on
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: excon
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: STDERR: sudo: no tty present
>>> and no askpass program specified
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: ---- End output of bundle
>>> install ----
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: Ran bundle install returned 5
>>> 2019/08/31 17:37:14 ui:     virtualbox-iso: [2019-08-31T17:37:19+03:00]
>>> FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited
>>> unsuccessfully (exit code 1)
>>>
>>>
>> Now, I can't understand how to get around it. Because this is expecting
>> sudo, whereas I had to disable it to get past the previous block call.
>>
>> Please suggest.
>>
>> Thanks,
>> Rhythm
>>
> --
> This mailing list is governed under the HashiCorp Community Guidelines -
> https://www.hashicorp.com/community-guidelines.html. Behavior in
> violation of those guidelines may result in your removal from this mailing
> list.
>
> GitHub Issues: https://github.com/mitchellh/packer/issues
> IRC: #packer-tool on Freenode
> ---
> You received this message because you are subscribed to the Google Groups
> "Packer" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/packer-tool/c57ca1b4-cf6a-4547-92ba-5afe9cd3d550%40googlegroups.com
> <https://groups.google.com/d/msgid/packer-tool/c57ca1b4-cf6a-4547-92ba-5afe9cd3d550%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
This mailing list is governed under the HashiCorp Community Guidelines - 
https://www.hashicorp.com/community-guidelines.html. Behavior in violation of 
those guidelines may result in your removal from this mailing list.

GitHub Issues: https://github.com/mitchellh/packer/issues
IRC: #packer-tool on Freenode
--- 
You received this message because you are subscribed to the Google Groups 
"Packer" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/packer-tool/CALz9Rt_qyNEmCMwCUHJDkhtWhBxyMjhefmbRG1PRJU--M6d8WQ%40mail.gmail.com.

Reply via email to