hashicorp / hashicorp/packer-plugin-amazon
Build fails with set_partition_type: Non-standard volume device "/dev/nvme0n1p1" using amazon-instance
- Dominant language
- Go
- Stars
- 91
- Forks
- 141
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 3
Description
_This issue was originally opened by @dimisjim as hashicorp/packer#9495. It was migrated here as a result of the [Packer plugin split](https://github.com/hashicorp/packer/issues/8610#issuecomment-770034737). The original body of the issue is below._
#### Overview of the Issue
I am trying to build an AMI with `amazon-instance` builder.
Bundler fails with `set_partition_type: Non-standard volume device "/dev/nvme0n1p1"`
#### Reproduction Steps
run `packer build`
### Packer version
`1.5.6`
### Simplified Packer Buildfile
```
{
"min_packer_version": "1.5.6",
"builders": [{
"type": "amazon-instance",
"name": "packer-builder",
"region": "eu-west-1",
"instance_type": "t3.large",
"account_id": "",
"s3_bucket": "",
"x509_cert_path": "",
"x509_key_path": "",
"source_ami_filter": {
"filters": {
"virtualization-type": "hvm",
"architecture": "x86_64",
"name": "*amzn2-ami-hvm-2.0.*",
"root-device-type": "ebs"
},
"owners": ["amazon"],
"most_recent": true
},
"ssh_username": "ec2-user",
"ami_name": "",
"ami_description": ""
}],
"provisioners": [
{
"type": "shell",
"script": "files/provision.sh"
}
]
}
```
Using this provisioning script to install the ami tools:
```
# Install EC2 AMI tools required by the amazon-instance packer builder
wget https://s3.amazonaws.com/ec2-downloads/ec2-ami-tools.noarch.rpm
rpm -K ec2-ami-tools.noarch.rpm
rpm -Kv ec2-ami-tools.noarch.rpm
sudo yum install -y ec2-ami-tools.noarch.rpm
rpm -qil ec2-ami-tools | grep ec2/amitools/version
export RUBYLIB=$RUBYLIB:/usr/lib/ruby/site_ruby:/usr/lib64/ruby/site_ruby
ec2-ami-tools-version
ec2-bundle-vol --version
which ec2-bundle-vol
sudo sed -i 's#/sbin:/bin:/usr/sbin:/usr/bin#/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin#g' /etc/sudoers
sudo touch /etc/profile.d/myenvvars.sh
sudo chmod +x /etc/profile.d/myenvvars.sh
sudo bash -c 'echo "export RUBYLIB=$RUBYLIB:/usr/lib/ruby/site_ruby:/usr/lib64/ruby/site_ruby" >> /etc/profile.d/myenvvars.sh'
sudo bash -c 'echo "export PATH=/usr/local/bin:$PATH:" >> /etc/profile.d/myenvvars.sh'
```
### Operating system and Environment details
Running packer in Ubuntu 20.04
### Log Fragments and crash.log files
```
==> packer-builder: Uploading X509 Certificate...
==> packer-builder: Bundling the volume...
==> packer-builder: /usr/lib/ruby/site_ruby/ec2/platform/linux/image.rb:253:in `set_partition_type': Non-standard volume device "/dev/nvme0n1p1" (FatalError)
==> packer-builder: from /usr/lib/ruby/site_ruby/ec2/platform/linux/image.rb:71:in `initialize'
packer-builder: Setting partition type to bundle "/" with...
==> packer-builder: from /usr/lib/ruby/site_ruby/ec2/amitools/bundlevol.rb:172:in `new'
==> packer-builder: from /usr/lib/ruby/site_ruby/ec2/amitools/bundlevol.rb:172:in `bundle_vol'
==> packer-builder: from /usr/lib/ruby/site_ruby/ec2/amitools/bundlevol.rb:231:in `main'
==> packer-builder: from /usr/lib/ruby/site_ruby/ec2/amitools/tool_base.rb:201:in `run'
==> packer-builder: from /usr/lib/ruby/site_ruby/ec2/amitools/bundlevol.rb:239:in `'
==> packer-builder: Volume bundling failed. Please see the output above for more
==> packer-builder: details on what went wrong.
==> packer-builder:
==> packer-builder: One common cause for this error is ec2-bundle-vol not being
==> packer-builder: available on the target instance.
==> packer-builder: Provisioning step had errors: Running the cleanup provisioner, if present...
==> packer-builder: Terminating the source AWS instance...
```
Contributor guide
Assessment
This issue has not been assessed yet.