hashicorp / hashicorp/packer-plugin-amazon

Build fails with set_partition_type: Non-standard volume device "/dev/nvme0n1p1" using amazon-instance

Open
#4 1 comment 0 reactions 0 assignees View on GitHub
bug builder/amazon
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.