Упаковщик aws экземпляр манипулятора сгенерировал ошибку с недопустимым значением Файл не существует или не является файлом?
Я использую Amazon Builder для создания изображений из AMI. Я передаю все параметры правильно. Но я не знаю, какое значение я должен передать в --manifest. Я получаю следующую ошибку.
amazon-instance: --manifest имеет недопустимое значение '/tmp/ami-257e6b5c.manifest.xml': файл не существует или не является файлом.
Я использую следующий файл для конвертации.
{
"variables": {
"aws_access_key": "",
"aws_secret_key": ""
},
"builders": [{
"type": "amazon-instance",
"access_key": "{{user `aws_access_key`}}",
"secret_key": "{{user `aws_secret_key`}}",
"region": "us-west-2",
"source_ami": "ami-257e6b5c",
"instance_type": "t2.micro",
"ssh_username": "ubuntu",
"account_id": "12345678",
"bundle_upload_command": "sudo ec2-upload-bundle -b packer-images -m /tmp/manifest.xml -a access_key -s secret_key -d /tmp --batch --retry",
"s3_bucket": "packer-images",
"x509_cert_path": "server.crt",
"x509_key_path": "server.key",
"x509_upload_path": "/tmp",
"ami_name": "packer-example {{timestamp}}"
}]
}
1 ответ
Не заменяйте шаблон, скопируйте его из документов и измените его.
sudo ec2-upload-bundle \
-b {{.BucketName}} \
-m {{.ManifestPath}} \
-a {{.AccessKey}} \
-s {{.SecretKey}} \
-d {{.BundleDirectory}} \
--batch \
--retry
Смотрите bundle_upload_command.
Причина, по которой вы должны удалить --region
потому что у вас есть старая версия AMI Tools. Я рекомендую вам попробовать установить более новую версию из исходного кода, см. Настройка инструментов AMI.