See my answer on SO https://stackoverflow.com/a/47301671/226174
On 15 November 2017 at 00:02, noisy noisyBits <[email protected]> wrote: > Hi all, > > I am struggling to run serverspec test on GCP packer instance from local > machine. > I have created a packer json config file as follows to create an image on > GCP (provisioners run shell script to create an user account for sftp on > packer instance): > { > "variables": { > "project": "gcp-project", > "image_family": "centos-7", > "username": "centos", > "sftp_username": "", > "sftp_password":"", > "zone": "us-central1-c", > "version": "latest" > }, > > "builders": [ > { > "type": "googlecompute", > "account_file": "account.json", > "project_id": "{{user `project`}}", > "zone": "{{user `zone`}}", > "source_image":"centos-7-v20171025", > "image_name": "sftp-{{user `image_family`}}-{{user > `version`}}-{{timestamp}}", > "image_family": "{{user `image_family`}}", > "image_description": "sftp - from packer", > "ssh_username": "{{user `username`}}", > "machine_type": "g1-small" > } > ], > > "provisioners": [ > { > "type" : "shell", > "inline": [ > "sudo adduser {{user `sftp_username`}}", > "sudo echo -e '{{user `sftp_password`}}\n{{user > `sftp_password`}}\n' | sudo passwd {{user `sftp_username`}}", > "sudo mkdir -p /var/sftp/upload", > "sudo chown root:root /var/sftp", > "sudo chmod 755 /var/sftp", > "sudo chown {{user `sftp_username`}}:{{user > `sftp_username`}} /var/sftp/upload" > ] > }, > { > "type": "shell-local", > "command": "rake spec TARGET_HOST=remotehost" > } > ] > } > > and i am executing rake spec TARGET_HOST=(ip of packer instance) to run > serverspec test from local machine and spec_helper.rb is configured with > ssh login as follows: > > host = ENV['TARGET_HOST'] > > options = Net::SSH::Config.for(host) > > options[:user] = 'centos' > > set :host, options[:host_name] || host > set :ssh_options, options > > and Rakefile is configured to run test from specific folder. > > after running packer build command "packer build -var-file=variables.json > sftp.json| tee build.log" > > it fails with > Net::SSH::AuthenticationFailed: > Authentication failed for user [email protected] > > Details packer build log > ==> googlecompute: Checking image does not exist... > ==> googlecompute: Creating temporary SSH key for instance... > ==> googlecompute: Using image: centos-7-v20171025 > ==> googlecompute: Creating instance... > googlecompute: Loading zone: us-central1-c > googlecompute: Loading machine type: g1-small > googlecompute: Loading network: default > googlecompute: Requesting instance creation... > googlecompute: Waiting for creation operation to complete... > googlecompute: Instance has been created! > ==> googlecompute: Waiting for the instance to become running... > googlecompute: IP: 1.2.3.4 > ==> googlecompute: Waiting for SSH to become available... > ==> googlecompute: Connected to SSH! > ==> googlecompute: Provisioning with shell script: /var/folders/vh/03_ > qyfy91r757mypx3qcgjfh0000gn/T/packer-shell043898698 > googlecompute: New password: BAD PASSWORD: The password contains the > user name in some form > googlecompute: Changing password for user nifi. > googlecompute: passwd: all authentication tokens updated successfully. > googlecompute: Retype new password: > ==> googlecompute: Executing local command: rake spec TARGET_HOST=host > googlecompute: > googlecompute: An error occurred while loading ./spec/ > 31.2.3.4/sftp_spec.rb. > googlecompute: On host `1.2.3.4' > googlecompute: Failure/Error: > googlecompute: describe service('sshd'), :if => os[:family] == > 'redhat' do > googlecompute: it { should be_enabled } > googlecompute: it { should be_running } > googlecompute: end > googlecompute: Net::SSH::AuthenticationFailed: > googlecompute: Authentication failed for user [email protected] > > > I am not able to ssh to this temporary packer instance and serverspec test > fail to run. > > any answer will be appreciated. thanks very much. > > Regards > Nirmal > > -- > 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/837f40a5-1759-4d39-a2b0-dd61940a78bc%40googlegroups.com > <https://groups.google.com/d/msgid/packer-tool/837f40a5-1759-4d39-a2b0-dd61940a78bc%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- 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/CALz9Rt8QNrncMSX0R%3DucPxweQhSCBhWiGqTcReuBc%3DX_kk%2BXfg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
