I use OpenStack Liberty deployed by instruction for CentOS7 from docs.openstack.org
I'm trying to create OS::Ceilometer::Alarm resource
In heat-engine.log i have error
2015-12-14 12:59:00.696 6672 ERROR heat.engine.resource BadRequest: Expecting to find domain in project - the server could not comply with the request since it is either malformed or otherwise incorrect. The client is assumed to be in error. (HTTP 400) (Request-ID: req-3d4ab42b-213b-4141-bd28-f8dbb2b79e96)
I use OpenStack Liberty deployed by instruction for CentOS7 from docs.openstack.org :Alarm resource
I'm trying to create OS::Ceilometer:
In heat-engine.log i have error
2015-12-14 12:59:00.696 6672 ERROR heat.engine. resource BadRequest: Expecting to find domain in project - the server could not comply with the request since it is either malformed or otherwise incorrect. The client is assumed to be in error. (HTTP 400) (Request-ID: req-3d4ab42b- 213b-4141- bd28-f8dbb2b79e 96)
environment heat-api. noarch 1:5.0.0-1.el7 @centos- openstack- liberty heat-api- cfn.noarch 1:5.0.0-1.el7 @centos- openstack- liberty heat-common. noarch 1:5.0.0-1.el7 @centos- openstack- liberty heat-engine. noarch 1:5.0.0-1.el7 @centos- openstack- liberty heatclient. noarch 0.8.0-1.el7 @centos- openstack- liberty ceilometer- alarm.noarch ceilometer- api.noarch 1:5.0.0-1.el7 @centos- openstack- liberty ceilometer. noarch 1:5.0.0-1.el7 @centos- openstack- liberty ceilometerclien t.noarch 1.5.0-1.el7 @centos- openstack- liberty
[root@controller ~]# yum list installed | grep heat
openstack-
openstack-
openstack-
openstack-
python-
[root@controller ~]# yum list installed | grep ceilometer
openstack-
openstack-
python-
python-
my suggestion, bug in clients/ os/ceilometer. py
heat/engine/
class CeilometerClien tPlugin( client_ plugin. ClientPlugin) :
...
def _create(self):
'auth_ url': con.auth_url,
'service_ type': self.METERING,
'project_ name': con.tenant, <--- HERE!!!
'token' : lambda: self.auth_token,
'endpoint_ type': endpoint_type,
'os_ endpoint' : endpoint,
'cacert' : self._get_ client_ option( 'ceilometer' , 'ca_file'),
'cert_ file': self._get_ client_ option( 'ceilometer' , 'cert_file'),
'key_ file': self._get_ client_ option( 'ceilometer' , 'key_file'),
'insecure' : self._get_ client_ option( 'ceilometer' , 'insecure')
...
args = {
}
if use
'project_ id': con.tenant_id, project_ name': con.tenant,
instead
'
it works fine