Add novajoin to EndpointMap

Previously, novajoin was relying on hiera data to populate endpoints in
keystone, but that recently changed for the rest of the OpenStack
services. This commit updates novajoin to use the same approach with
EndpointMap. Otherwise, deploying the undercloud fails with an error
message similar to the following:

  Cannot create an endpoint with an invalid URL: http://%{hiera('ctlplane')}:9090/v1/.

Change-Id: I0e177a5e21ed9fb5eacba7a766c153ba99af34ae
This commit is contained in:
Emilien Macchi 2020-01-09 10:58:01 -05:00
parent 96cece1e45
commit 18e51ca533
8 changed files with 438 additions and 8 deletions

View File

@ -101,14 +101,9 @@ outputs:
keystone_resources:
novajoin:
endpoints:
public: &novajoin_endpoint
str_replace:
template:
"http://%{hiera('novajoin_network')}:9090/v1/"
params:
novajoin_network: {get_param: [ServiceNetMap, NovajoinNetwork]}
internal: *novajoin_endpoint
admin: *novajoin_endpoint
public: {get_param: [EndpointMap, NovajoinPublic, uri]}
internal: {get_param: [EndpointMap, NovajoinInternal, uri]}
admin: {get_param: [EndpointMap, NovajoinAdmin, uri]}
users:
novajoin:
password: {get_param: NovajoinPassword}

View File

@ -75,6 +75,9 @@ parameter_defaults:
NovaAdmin: {protocol: http, port: '8774', host: IP_ADDRESS}
NovaInternal: {protocol: http, port: '8774', host: IP_ADDRESS}
NovaPublic: {protocol: http, port: '8774', host: IP_ADDRESS}
NovajoinAdmin: {protocol: http, port: '9090', host: IP_ADDRESS}
NovajoinInternal: {protocol: http, port: '9090', host: IP_ADDRESS}
NovajoinPublic: {protocol: http, port: '9090', host: IP_ADDRESS}
NovaMetadataInternal: {protocol: http, port: '8775', host: IP_ADDRESS}
NovaUIConfig: {protocol: http, port: '3000', host: IP_ADDRESS}
PlacementAdmin: {protocol: http, port: '8778', host: IP_ADDRESS}

View File

@ -71,6 +71,9 @@ parameter_defaults:
NovaAdmin: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'}
NovaInternal: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'}
NovaPublic: {protocol: 'https', port: '13774', host: 'CLOUDNAME'}
NovajoinAdmin: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'}
NovajoinInternal: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'}
NovajoinPublic: {protocol: 'https', port: '13090', host: 'CLOUDNAME'}
NovaMetadataInternal: {protocol: 'https', port: '8775', host: 'IP_ADDRESS'}
NovaUIConfig: {protocol: 'https', port: '443', host: 'IP_ADDRESS'}
PlacementAdmin: {protocol: 'http', port: '8778', host: 'IP_ADDRESS'}

View File

@ -71,6 +71,9 @@ parameter_defaults:
NovaAdmin: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'}
NovaInternal: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'}
NovaPublic: {protocol: 'https', port: '13774', host: 'IP_ADDRESS'}
NovajoinAdmin: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'}
NovajoinInternal: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'}
NovajoinPublic: {protocol: 'https', port: '13090', host: 'IP_ADDRESS'}
NovaMetadataInternal: {protocol: 'https', port: '8775', host: 'IP_ADDRESS'}
NovaUIConfig: {protocol: 'https', port: '443', host: 'IP_ADDRESS'}
PlacementAdmin: {protocol: 'http', port: '8778', host: 'IP_ADDRESS'}

View File

@ -71,6 +71,9 @@ parameter_defaults:
NovaAdmin: {protocol: 'https', port: '8774', host: 'CLOUDNAME'}
NovaInternal: {protocol: 'https', port: '8774', host: 'CLOUDNAME'}
NovaPublic: {protocol: 'https', port: '13774', host: 'CLOUDNAME'}
NovajoinAdmin: {protocol: 'https', port: '9090', host: 'CLOUDNAME'}
NovajoinInternal: {protocol: 'https', port: '9090', host: 'CLOUDNAME'}
NovajoinPublic: {protocol: 'https', port: '13090', host: 'CLOUDNAME'}
NovaMetadataInternal: {protocol: 'https', port: '8775', host: 'CLOUDNAME'}
NovaUIConfig: {protocol: 'https', port: '443', host: 'CLOUDNAME'}
PlacementAdmin: {protocol: 'https', port: '8778', host: 'CLOUDNAME'}

View File

@ -380,3 +380,18 @@ NovaMetadata:
Internal:
net_param: NovaMetadata
port: 8775
Novajoin:
Internal:
net_param: Novajoin
uri_suffixes:
'': /v1
Public:
net_param: Public
uri_suffixes:
'': /v1
Admin:
net_param: Novajoin
uri_suffixes:
'': /v1
port: 9090

View File

@ -275,6 +275,18 @@ parameters:
protocol: http
port: '6080'
host: IP_ADDRESS
NovajoinAdmin:
protocol: http
port: '9090'
host: IP_ADDRESS
NovajoinInternal:
protocol: http
port: '9090'
host: IP_ADDRESS
NovajoinPublic:
protocol: http
port: '9090'
host: IP_ADDRESS
OctaviaAdmin:
protocol: http
port: '9876'
@ -10132,6 +10144,390 @@ outputs:
- EndpointMap
- NovaVNCProxyPublic
- port
NovajoinAdmin:
host:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinAdmin
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- NovajoinNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- NovajoinNetwork
template: NETWORK_uri
host_nobrackets:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinAdmin
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- NovajoinNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- get_param:
- ServiceNetMap
- NovajoinNetwork
port:
get_param:
- EndpointMap
- NovajoinAdmin
- port
protocol:
get_param:
- EndpointMap
- NovajoinAdmin
- protocol
uri:
make_url:
scheme:
get_param:
- EndpointMap
- NovajoinAdmin
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinAdmin
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- NovajoinNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- NovajoinNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- NovajoinAdmin
- port
path: /v1
uri_no_suffix:
make_url:
scheme:
get_param:
- EndpointMap
- NovajoinAdmin
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinAdmin
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- NovajoinNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- NovajoinNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- NovajoinAdmin
- port
NovajoinInternal:
host:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinInternal
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- NovajoinNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- NovajoinNetwork
template: NETWORK_uri
host_nobrackets:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinInternal
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- NovajoinNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- get_param:
- ServiceNetMap
- NovajoinNetwork
port:
get_param:
- EndpointMap
- NovajoinInternal
- port
protocol:
get_param:
- EndpointMap
- NovajoinInternal
- protocol
uri:
make_url:
scheme:
get_param:
- EndpointMap
- NovajoinInternal
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinInternal
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- NovajoinNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- NovajoinNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- NovajoinInternal
- port
path: /v1
uri_no_suffix:
make_url:
scheme:
get_param:
- EndpointMap
- NovajoinInternal
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinInternal
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- NovajoinNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- NovajoinNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- NovajoinInternal
- port
NovajoinPublic:
host:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinPublic
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- PublicNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- PublicNetwork
template: NETWORK_uri
host_nobrackets:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinPublic
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- PublicNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- get_param:
- ServiceNetMap
- PublicNetwork
port:
get_param:
- EndpointMap
- NovajoinPublic
- port
protocol:
get_param:
- EndpointMap
- NovajoinPublic
- protocol
uri:
make_url:
scheme:
get_param:
- EndpointMap
- NovajoinPublic
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinPublic
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- PublicNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- PublicNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- NovajoinPublic
- port
path: /v1
uri_no_suffix:
make_url:
scheme:
get_param:
- EndpointMap
- NovajoinPublic
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- NovajoinPublic
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- PublicNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- PublicNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- NovajoinPublic
- port
OctaviaAdmin:
host:
str_replace:

View File

@ -179,6 +179,9 @@ environments:
NovaAdmin: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'}
NovaInternal: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'}
NovaPublic: {protocol: 'https', port: '13774', host: 'IP_ADDRESS'}
NovajoinAdmin: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'}
NovajoinInternal: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'}
NovajoinPublic: {protocol: 'https', port: '13090', host: 'IP_ADDRESS'}
NovaMetadataInternal: {protocol: 'https', port: '8775', host: 'IP_ADDRESS'}
NovaUIConfig: {protocol: 'https', port: '443', host: 'IP_ADDRESS'}
PlacementAdmin: {protocol: 'http', port: '8778', host: 'IP_ADDRESS'}
@ -281,6 +284,9 @@ environments:
NovaAdmin: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'}
NovaInternal: {protocol: 'http', port: '8774', host: 'IP_ADDRESS'}
NovaPublic: {protocol: 'https', port: '13774', host: 'CLOUDNAME'}
NovajoinAdmin: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'}
NovajoinInternal: {protocol: 'http', port: '9090', host: 'IP_ADDRESS'}
NovajoinPublic: {protocol: 'https', port: '13090', host: 'CLOUDNAME'}
NovaMetadataInternal: {protocol: 'https', port: '8775', host: 'IP_ADDRESS'}
NovaUIConfig: {protocol: 'https', port: '443', host: 'IP_ADDRESS'}
PlacementAdmin: {protocol: 'http', port: '8778', host: 'IP_ADDRESS'}
@ -383,6 +389,9 @@ environments:
NovaAdmin: {protocol: 'https', port: '8774', host: 'CLOUDNAME'}
NovaInternal: {protocol: 'https', port: '8774', host: 'CLOUDNAME'}
NovaPublic: {protocol: 'https', port: '13774', host: 'CLOUDNAME'}
NovajoinAdmin: {protocol: 'https', port: '9090', host: 'CLOUDNAME'}
NovajoinInternal: {protocol: 'https', port: '9090', host: 'CLOUDNAME'}
NovajoinPublic: {protocol: 'https', port: '13090', host: 'CLOUDNAME'}
NovaMetadataInternal: {protocol: 'https', port: '8775', host: 'CLOUDNAME'}
NovaUIConfig: {protocol: 'https', port: '443', host: 'CLOUDNAME'}
PlacementAdmin: {protocol: 'https', port: '8778', host: 'CLOUDNAME'}
@ -495,6 +504,9 @@ environments:
NovaAdmin: {protocol: http, port: '8774', host: IP_ADDRESS}
NovaInternal: {protocol: http, port: '8774', host: IP_ADDRESS}
NovaPublic: {protocol: http, port: '8774', host: IP_ADDRESS}
NovajoinAdmin: {protocol: http, port: '9090', host: IP_ADDRESS}
NovajoinInternal: {protocol: http, port: '9090', host: IP_ADDRESS}
NovajoinPublic: {protocol: http, port: '9090', host: IP_ADDRESS}
NovaMetadataInternal: {protocol: http, port: '8775', host: IP_ADDRESS}
NovaUIConfig: {protocol: http, port: '3000', host: IP_ADDRESS}
PlacementAdmin: {protocol: http, port: '8778', host: IP_ADDRESS}