Bug 1387100 - IPv6 deployment with Swift Storage nodes fail with ERROR: Failed to validate: Failed to validate: resources[0]: The Resource Type (OS::TripleO::SwiftStorage::Ports::TenantPort) could not be found."
Summary: IPv6 deployment with Swift Storage nodes fail with ERROR: Failed to validate:...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 10.0 (Newton)
Hardware: Unspecified
OS: Unspecified
unspecified
urgent
Target Milestone: ga
: 10.0 (Newton)
Assignee: Dan Prince
QA Contact: Omri Hochman
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-10-20 06:15 UTC by Marius Cornea
Modified: 2016-10-23 09:39 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-10-23 09:39:26 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description Marius Cornea 2016-10-20 06:15:01 UTC
Description of problem:
IPv6 deployment with Swift Storage nodes fail with ERROR: Failed to validate: Failed to validate: resources[0]: The Resource Type (OS::TripleO::SwiftStorage::Ports::TenantPort) could not be found."

Version-Release number of selected component (if applicable):
openstack-tripleo-heat-templates-5.0.0-0.20161008015357.0d3e3e3.1.el7ost.noarch

How reproducible:
100%

Steps to Reproduce:

1. Deploy IPv6 overclud containing Swift storage node:
openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation-v6.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e $THT/environments/tls-endpoints-public-ip.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/public_vip.yaml \
-e ~/openstack_deployment/environments/enable-tls.yaml \
-e ~/openstack_deployment/environments/inject-trust-anchor.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log


Actual results:

stdout:                                                        u'input': {u'messages': {u'body': {u'payload': {u'execution': u'<% execution() %>',
                                                                                                       u'message': u"<% $.get('message', '') %>",
                                                                                                       u'status': u"<% $.get('status', 'SUCCESS') %>"},
                                                                                          u'type': u'tripleo.deployment.v1.deploy_plan'}},
                                                                  u'queue_name': u'<% $.queue_name %>'},
                                                       u'name': u'send_message',
                                                       u'retry': u'count=5 delay=1',
                                                       u'type': u'direct',
                                                       u'version': u'2.0'},
                                     u'set_deployment_failed': {u'name': u'set_deployment_failed',
                                                                u'on-success': u'send_message',
                                                                u'publish': {u'message': u'<% task(deploy).result %>',
                                                                             u'status': u'FAILED'},
                                                                u'type': u'direct',
                                                                u'version': u'2.0'},
                                     u'test_validations_enabled': {u'action': u'tripleo.validations.enabled',
                                                                   u'name': u'test_validations_enabled',
                                                                   u'on-error': u'send_message',
                                                                   u'on-success': u'copy_validation_ssh_keys',
                                                                   u'type': u'direct',
                                                                   u'version': u'2.0'}},
                          u'version': u'2.0'}},
 u'message': u"Failed to run action [action_ex_id=f6845662-7e27-4c96-aff7-0fcc098a8000, action_cls='<class 'mistral.actions.action_factory.DeployStackAction'>', attributes='{}', params='{u'container': u'overcloud', u'timeout': 240}']
 ERROR: Failed to validate: Failed to validate: resources[0]: The Resource Type (OS::TripleO::SwiftStorage::Ports::TenantPort) could not be found.",
 u'status': u'FAILED'}
Removing the current plan files
Uploading new plan files
Started Mistral Workflow. Execution ID: e2acf7f7-ec03-41e8-87a7-e14853fb83e2
Plan updated
Deploying templates in the directory /tmp/tripleoclient-3R8Rz3/tripleo-heat-templates
Started Mistral Workflow. Execution ID: 623a6b11-3b89-4012-ac55-49053cc59ba7

Expected results:
Deployment proceeds.

Additional info:
It looks that in network-isolation-v6.yaml we don't noop the OS::TripleO::SwiftStorage::Ports::TenantPort as we do in the v4 network-isolation.yaml.

Comment 1 James Slagle 2016-10-20 11:34:05 UTC
dan, can you take a look at this one?

Comment 2 Dan Prince 2016-10-21 17:20:14 UTC
I think I need more information to comment on this ticket. I tried locally and I wasn't able to duplicate it by using the net-single-nic-with-vlans os-net-config templates. I would like to see what is contained in the various ~/openstack_deployment/ templates before commenting further. Could you tell me where those are located?

The suggestion about nooping the TenantPort out in the -v6 templates is possible but I don't think we've had to do that in CI to get the other roles passing. I would just like to verify what is getting set before proceeding so I can reproduce this.

Comment 3 Dan Prince 2016-10-21 17:20:26 UTC
I think I need more information to comment on this ticket. I tried locally and I wasn't able to duplicate it by using the net-single-nic-with-vlans os-net-config templates. I would like to see what is contained in the various ~/openstack_deployment/ templates before commenting further. Could you tell me where those are located?

The suggestion about nooping the TenantPort out in the -v6 templates is possible but I don't think we've had to do that in CI to get the other roles passing. I would just like to verify what is getting set before proceeding so I can reproduce this.

Comment 4 Marius Cornea 2016-10-21 17:30:16 UTC
(In reply to Dan Prince from comment #3)
> I think I need more information to comment on this ticket. I tried locally
> and I wasn't able to duplicate it by using the net-single-nic-with-vlans
> os-net-config templates. I would like to see what is contained in the
> various ~/openstack_deployment/ templates before commenting further. Could
> you tell me where those are located?
> 
> The suggestion about nooping the TenantPort out in the -v6 templates is
> possible but I don't think we've had to do that in CI to get the other roles
> passing. I would just like to verify what is getting set before proceeding
> so I can reproduce this.

I pasted them here:
http://paste.openstack.org/show/586723/

I was able to pass the deployment after adding the following in the network-environment.yaml:

  OS::TripleO::SwiftStorage::Ports::TenantPort: /usr/share/openstack-tripleo-heat-templates/network/ports/noop.yaml
  OS::TripleO::SwiftStorage::Ports::ExternalPort: /usr/share/openstack-tripleo-heat-templates/network/ports/noop.yaml

Comment 5 Dan Prince 2016-10-21 18:09:08 UTC
Marius:

Could you verify that your openstack-heat-templates have this fix which should effectively set all of the SwiftStorage ports to noop.yaml in the resource registry?

http://git.openstack.org/cgit/openstack/tripleo-heat-templates/commit/overcloud-resource-registry-puppet.j2.yaml?h=stable/newton&id=754fc4e948263266e57c31ca2a40fde4cbb67a2f

I think this may be why I am unable to re-produce this locally.

Comment 6 Marius Cornea 2016-10-21 19:31:32 UTC
(In reply to Dan Prince from comment #5)
> Marius:
> 
> Could you verify that your openstack-heat-templates have this fix which
> should effectively set all of the SwiftStorage ports to noop.yaml in the
> resource registry?
> 
> http://git.openstack.org/cgit/openstack/tripleo-heat-templates/commit/
> overcloud-resource-registry-puppet.j2.yaml?h=stable/
> newton&id=754fc4e948263266e57c31ca2a40fde4cbb67a2f
> 
> I think this may be why I am unable to re-produce this locally.

No, the build that I used didn't have this patch.

Comment 7 Marius Cornea 2016-10-23 09:38:30 UTC
This is fixed in the last build from 21 Oct:

openstack-tripleo-heat-templates.noarch 0:5.0.0-0.6.0rc3.el7ost


Note You need to log in before you can comment on or make changes to this bug.