RedHat has long had an
insane requiretty default for sudo, something that is fixed in later versions. Packer rightly
doesn't set a tty by default, so if you provision a RHEL machine you'll likely see this:
sudo: sorry, you must have a tty to run sudo
In fact RHEL is quite the special snowflake, you need to set ssh_pty and also specify a username since root ssh is disabled by default. Here's my working builder:
"name": "rhel-7.1",
"type": "googlecompute",
"account_file": "account.json",
"project_id": "YOUR_PROJECT_ID",
"source_image": "rhel-7-v20150710",
"zone": "us-central1-f",
"instance_name": "rhel-7",
"image_name": "rhel-7-{{timestamp}}",
"machine_type": "n1-standard-1",
"ssh_pty": "true",
"ssh_username": "someuser"