我正在尝试使用Packer和Openstack。我正确地设置了我的环境变量,但是在打包器验证时我收到了错误。
我的包装工json文件:
{
"builders":[{
"type": "openstack",
"region": "ap-au-1",
"ssh_username": "root",
"image_name": "kris-packer",
"source_image": "4ead4da5-efc8-48ce-bfa9-********",
"flavor": "2"
}]
}
我收到以下错误:
./packer validate test.json
>>Template validation failed. Errors are shown below.
Errors validating build 'openstack'. 1 error(s) occurred:
* You must provide exactly one of DomainID or DomainName to authenticate by Username
根据文档,我在运行打包程序代码之前设置了以下环境变量:
OS_PROJECT_DOMAIN_ID=
OS_PROJECT_ID=
OS_USER_DOMAIN_ID=
OS_IDENTITY_API_VERSION=3
OS_PASSWORD=
OS_AUTH_URL=
OS_USERNAME=
我还尝试使用OS_XXXX_NAME而不是OS_XXXX_ID,但仍然遇到上述错误。有人可以指出可能出现的问题吗?
注意:我能够成功运行openstack image list
之类的命令,并通过CLI执行其他操作。我唯一的问题是在使用打包机时。
答案 0 :(得分:0)
来自Packer documentation:
OS_TENANT_NAME或OS_TENANT_ID必须使用,即使身份v3,OS_PROJECT_NAME和OS_PROJECT_ID在Packer中也无效。
如果你做export OS_TENANT_NAME=$OS_PROJECT_NAME