Commit Graph

196 Commits

Author SHA1 Message Date
Ghanshyam Mann c2ff9b8f49 Retire Tripleo: remove repo content
TripleO project is retiring
- https://review.opendev.org/c/openstack/governance/+/905145

this commit remove the content of this project repo

Change-Id: I7f1dc7801a025d9bb28110f74340846b99870b79
2024-02-24 11:43:13 -08:00
Rabi Mishra 3e41f36368 Support actual hostnames in DeploymentServerBlacklist
Historically, we only supported heat hostnames in
DeploymentServerBlacklist and this causes lots of
confusion, specifically when using ephemeral heat.
Let's support both.

Change-Id: Ifdc0ea99e02743739d6369101eac8476f28c25b8
2022-09-12 16:43:45 +05:30
Zuul 0041650149 Merge "Remove unused Config* parameters" 2022-08-04 06:15:56 +00:00
Takashi Kajinami 1a7998bfc7 Remove unused Config* parameters
These parameters were used to control behavior of os-collect-config,
which was already removed when we completely replaced it by config-
download mechanism.

Change-Id: Id106cde205ce52a1299dc8f18ae8d59201b7499f
2022-07-27 13:32:14 +09:00
Takashi Kajinami 34a2e1ebc9 Remove parameters/resources for undercloud Nova
This change removes the following parameters, which were used by
undercloud Nova.
 - KeyName
 - Overcloud{{role.name}}Flavor
 - {{role.name}}SchedulerHints
 - {{role.name}}Image

This also removes the NodeUserData resource because it depends on
cloud-init and nova metadata and is no longer used since Nova was
removed from baremetal node provisioning.

Finally, this change makes deployed server method used by default, and
removes remaining implementation to keep the resource compatible with
OS::Nova::Server.

Change-Id: I571b401ab2ca3c77352f4849eb2b99de20292032
2022-07-07 20:34:13 +09:00
rabi a8b849f036 Remove unused deployed_server_port_map output
OS::TripleO::DeployedServerEnvironment was dropped in
I47beaaccd01d72cc550ffc7871e3384e112d9334 which used
this output.

Change-Id: I5fb37734837a84d37f08263de1b7a2840ec64139
2022-02-28 11:13:04 +05:30
Bogdan Dobrelya 27b8210fd4 Align defaults for SoftwareConfigTransport
It should be POLL_SERVER_HEAT as we no longer use Heat CFN.
This follows up I639f5626013cd0ef61c1f9066fab7a7b8806287f

Change-Id: I2ba1be7a5c72a34f67dbf9a79abef66213ff6af6
Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
2022-02-17 10:01:51 +00:00
Jesse Pretorius (odyssey4me) dcddeb3b91 Make UpgradeLeappDevelSkip per-role
When specific roles are deployed, for example CephStorage,
then the parameters for UpgradeLeappDevelSkip are different
to all other roles.

This change makes UpgradeLeappDevelSkip a per-role parameter.

Included in this is the appropriate tagging for the other
parameters which had the same work done in:

- https://review.opendev.org/779522
- https://review.opendev.org/774537

Release notes are included for all of the above too.

Related-Bug: rhbz#1962365

Change-Id: I522951cc7ec6034bb6287dd144a9fc433c0090e0
2021-06-13 22:48:01 +01:00
Harald Jensås 659cc55277 Add neutron port tag hint for role name
Adds a tag tripleo_role=$ROLE to neutron ports
created by heat.

Related: blueprint network-data-v2-ports
Change-Id: I238572444e2931546d44864b2de497dd2825c2dc
2021-05-14 21:31:50 +02:00
Harald Jensås a120ada72e Refactor OVN bridge MAC addresses
Moving the network and port management for OVN
bridge MAC addresses to ansible.

Removes the heat resources, and adds an external
deploy task at step 0 in the ovn controller service
templates which uses the 'tripleo_ovn_mac_addresses'
ansible module to create/remove OVN mac address ports.

Adds parameter role_specific OVNStaticBridgeMacMappings,
parameter that can be used to set static bridge mac
mappings. When this is set no neutron resources will be
created by the tripleo_ovn_mac_addresses ansible module.
OVNStaticBridgeMacMappings must be used for standalone
deployments.

Implements: blueprint network-data-v2-port
Depends-On: https://review.opendev.org/782891
Depends-On: https://review.opendev.org/783137
Change-Id: I6ce29d2908e76044c55eb96d0d3779fe67ba9169
2021-05-04 11:49:50 +05:30
Zuul bdd379cfdd Merge "Add neutron port tag hint for default_route_network" 2021-04-09 10:30:02 +00:00
ramishra c9991c2e31 Use 'wallaby' heat_template_version
With I57047682cfa82ba6ca4affff54fab5216e9ba51c Heat has added
a new template version for wallaby. This would allow us to use
2-argument variant of the ``if`` function that would allow for
 e.g. conditional definition of resource properties and help
cleanup templates. If only two arguments are passed to ``if``
function, the entire enclosing item is removed when the condition
is false.

Change-Id: I25f981b60c6a66b39919adc38c02a051b6c51269
2021-03-31 17:35:12 +05:30
Harald Jensås cea78ad4fd Add neutron port tag hint for default_route_network
Adds a tag tripleo_default_route=$BOOL to neutron ports
created by heat indicating if the ports interface is
used for the default route.

The value is controlled by the 'default_route_networks'
in roles data.

With network-data-v2 the same tag will be used to
set up ansible vars appropriately. Having the heat driven
process add the tag can be useful for upgrade/migration
automation.

Related: blueprint network-data-v2-ports
Change-Id: I20d48b3a29193dbcb70ec5cb13daf153bb0aeff2
2021-03-30 13:14:13 +02:00
Takashi Kajinami e7894c0b23 Restore PreNetworkConfig resources
This change restores the PreNetworkConfig resources, so that we migrate
back ExtraCnfigPre and NodeExtraConfig from pre network configurations
to post network configurations, to be consistent with older version
depending on Heat software deployments instead of config download.

Depends-on: https://review.opendev.org/772303
Closes-Bug: #1907214
Change-Id: I96e7e4c570839cfba6011788464d8e93925b2f01
2021-02-01 05:56:59 +00:00
Rabi Mishra 6d39c90a22 Use RootStackName parameter instead for consistency
We don't need another parameter for the root stack and
also not required to pass it around.

This was added earlier with [1].

[1] https://review.opendev.org/openstack/tripleo-heat-templates/761845

Change-Id: I5dee09ab6c15c1887394b0dbda6866e94231f3a5
2020-12-14 12:38:54 +05:30
Harald Jensås 28f2a70912 Add hostname and stack_name tags to ports
Set tag's with the stack name and the hostname
on composable network node ports. The tags will
be used by network-data-v2 with port management
handled outside of heat.

Change-Id: I23c600c1754d463028259a7dc2c6e5538c512ca4
2020-11-14 00:39:29 +00:00
Harald Jensås ff30e794d1 Create NetworkConfig per-role in overcloud.yaml
For each role create a network config resource
{role.name}}NetworkConfig. Remove per node
NetworkConfig resource from puppet/role.role.j2.yaml.

NOTE: CI nic config templates was updated with using
      tools/merge-new-params-nic-config-script.py

Depends-On: https://review.opendev.org/753930
Change-Id: Iff4bf742947a5a8170938372a8075519850b6f63
2020-09-29 14:13:51 +02:00
Rabi Mishra 02f80c05d0 Use ansible for undercloud/standalone network config
This patch changes undercloud and standalone roles to
generate network config with only ansible and
not depend on downloaded network config from
heat stack.

Depends-On: https://review.opendev.org/#/c/753958/
Change-Id: Ibcb0f0a65cfd04d677a4b861d9f647af13611b24
2020-09-26 13:34:01 +05:30
Rabi Mishra a4622f1382 Use OS::Heat::Value for NetworkConfig
This removes the run-os-net-config.sh script and uses
OS::Heat::Value for the NetworkConfig resources.

Depends-On: https://review.opendev.org/#/c/751713/
Change-Id: Ic3a0234d36525cdd6f415c77733d05a39bbeb3c2
2020-09-22 08:18:22 +05:30
Zuul 87a4674d6e Merge "Get the CIDR of the neutron port for NetworkConfig" 2020-09-22 02:32:26 +00:00
Harald Jensås cd53ae79c7 Get the CIDR of the neutron port for NetworkConfig
Since GroupVars moved to overcloud.j2.yaml in
https://review.opendev.org/677218 the CIDR set in
'{{network.name_lower}}_cidr' in groupvars is limited
to one of the subnets on the network.

When a network have multiple subnets with different
subnet prefixes, this becomes a problem as nodes are
configured with the from subnet mask.

This change moves them to AnsibleHostVars.

Closes-Bug: #1895899
Change-Id: I4e4e5b1195d17f59c825a3f7df73920921e1f86e
2020-09-17 08:02:48 +05:30
Harald Jensås c90bbe188e OVNChassisMacPorts for distributed VLAN
For distributed vlan in ovn we need to add support of
creating mac addresses per compute and seting them in
external_ids:ovn-chassis-mac-mappings.

This change passes the ovn::controller::ovn_bridge_mappings
to the role node configuration so that ports for each
bridge mapping can be created. The map of physnet/mac_address
pairs is placed in the role output, and in RoleGroupVars.

Related-Bug: #1881593
Change-Id: If24653b629e39b6dd7ec6d09ae0ef32d7842c48f
2020-08-28 18:24:13 +02:00
Rabi Mishra d573f4e878 Simplify host entries generation
This removes a resource and the the unnecessary yaql function.
Also replaces json data types with lists to reduce memory
footprint.

Change-Id: I04a6114ca3d2703ca2891d6807d49b78ffee0f97
Related-Bug: #1886203
2020-07-13 12:25:06 +05:30
Harald Jensås 679ecaada0 Set dns_name propery on ports and networks
Neutron's dns_assignments field includes a nice pice of
structured data. This is a prerequirement for Designate
usage. (No plan's to use that, but being a bit ready
does'nt hurt.)

  {"hostname": "my-vm",
   "ip_address": "192.0.2.16",
   "fqdn": "my-vm.example.org."}

Enable for the undercloud:
 - dns_domain_ports ml2 extension driver

Change-Id: I46eb9a24dd66821b27524fe4d1fdab617b6fa948
2020-04-03 08:57:38 +02:00
Bogdan Dobrelya 3b8e6f78e1 Use lists for storing host entries in Heat
This simplifies all the split/join transformations and improves the
memory footprint to a reduced list of unique entries for
HostsEntryValue (originally required for storing the ultimate data for
hosts entries in a form of a quite long single-line string value).

That improves the hosts entries processing for large scale deployments
and removes possible limitations to the sizes of strings.

Closes-bug: #1869375
Change-Id: I5ac498621e9e3c49def565744a7b521cb2cc5c25
Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
2020-03-27 15:20:49 +01:00
Saravanan KR 9305d1efe9 Remove PreNetworkConfig resource
PreNetworkConfig resource was required to support host changes
before network deployment (for OvS-DPDK). As the required steps
has been migrated to ansible deploy_steps with 'step: 0', this
resources is no longer required.

Change-Id: I11a8ec280b4f5c33b6061a96cb546b4760a45b3a
2020-01-02 15:04:56 +05:30
James Slagle 597cdb6796 Use ansible for hosts entries
This patch updates the templates to use the new ansible role,
tripleo-hosts-entries, for managing the entries in /etc/hosts instead of
the values from the Heat stack.

Change-Id: I606e0f27f9f9ae9d85bc0fc653f8985eb734d004
Depends-On: Ia02ca1263590e2b579f2534e99119d7b1cd4b39a
2019-11-14 11:29:51 -05:00
Rabi Mishra 070945f278 Move GroupVars to overcloud.j2.yaml
These are role specific. There is no point of creating it
for every node nested stack of a role.

Change-Id: I5104154fc4c952c46caf42289531b9c4abd9ff6c
2019-08-23 08:38:46 +05:30
Zuul e6b598fa23 Merge "Remove glance and nova custom constraints" 2019-08-22 17:03:55 +00:00
Martin Schuppert 6745f86f2a Fix vlan id assignment with additional subnets
_role_net_subnet contains the name of the subnet, so
_role_net_subnet.vlan will not return the correct configured
vlan id. This change uses network.subnets[_role_net_subnet].vlan
to get the configured vlan id.

Change-Id: Ifef98f45a57af508d7302584aa52eedd45316edd
Closes-Bug: #1840054
2019-08-13 17:26:58 +02:00
Steve Baker fe266d120d Remove glance and nova custom constraints
These endpoints won't exist on the undercloud in the U cycle, and this
sort of check overlaps with tripleo-validations anyway. This change
also removes the disable_constraints roles data attribute as there is
no longer anything to disable.

Possibly this means deployed-server/deployed-server-roles-data.yaml is
no longer required because it only exists to set
disable_constraints:true (although it lags roles_data.yaml by quite a
lot now)

It looks like tripleo-validations has checks for flavor and image
already, but not keypair. It is unlikely users stray from the
'default' keypair so it is probably fine to not have a validation of
this for the Train release.

Change-Id: Id6146bfdc124e6e3e64ee7caea3ddeb2552bfa71
Blueprint: nova-less-deploy
2019-08-07 21:30:24 +00:00
Zuul fb420a32d3 Merge "Remove DeploymentSwiftDataMap parameter" 2019-07-30 21:08:49 +00:00
Zuul c098eed3d4 Merge "Use ansible vars nic config" 2019-07-30 01:01:54 +00:00
Zuul 53ad86b486 Merge "Add var for {{network.name_lower}}_cidr" 2019-07-30 00:58:07 +00:00
Rabi Mishra dad706daf3 Move ConfigDatafiles to overcloud.j2.yaml
It seems we unnecessarily create resources in every nested stack.

Change-Id: I8b90b64cda5c27ff6b889337c116e9644372163c
2019-07-29 15:31:30 +05:30
Rabi Mishra 1d710a3ac9 Fix {{server_resource_name}}ConfigDatafiles properties
Looks like an Inadvertent error in https://review.opendev.org/#/c/662472/.

Change-Id: Ifcec357da66af0c7841b9c0f4b4167b9c4cf5e29
2019-07-29 10:01:47 +05:30
James Slagle f732a8390a Use ansible vars nic config
Migrates the NetworkConfig resource to use ansible vars as the values
for Heat parameters for the IP and subnet cidr. This makes it so that
the nic config template value coming out of Heat is generic per role.
The same nic config can then be used for any node of that role type by
Ansible, and the Ansible vars will be resolved at config-download
runtime.

Change-Id: I7e85dabd42ccb348ea27825d03c08157222956a1
2019-07-23 13:25:23 -04:00
James Slagle 7816fa0cf7 Add var for {{network.name_lower}}_cidr
Adds a group var for {{network.name_lower}}_cidr for each role. Using
the lowecase name will make it more consistent with the lowercase
network names for the IP addresses.

Also removes the {{network.name}}_cidr output from role.role.j2.yaml as
those values have already been included the group vars.

Change-Id: Ib660c2dd25e2207f51439ec6b9c59b6e88eb23f8
2019-07-23 13:20:56 -04:00
Rabi Mishra 7c1599a413 Remove DeploymentSwiftDataMap parameter
Now that we do all node configurations using config-download,
this interface is not useful anymore.

Change-Id: Ifffaff6f044e334491b8f00cc6c6c8779d7bf7e5
2019-07-23 11:00:16 +05:30
James Slagle 5c53029232 Set HieradataVars as group vars instead
Instead of writing a set of vars to hieradata_vars.yaml and then passing
that into tasks with vars_files, just set the data as group vars.

This makes for a simpler interface without having to remember to pass in
the data with vars_files on any task/play that might require them.

Change-Id: I851d9404861d55791bde1346c58bc1c94f591569
2019-07-13 11:50:30 +00:00
James Slagle 2f6f519149 Use Ansible for ssh known hosts config
Migrate to using the template mode of the tripleo-ssh-known-hosts role.

Detailed Changes:
common/deploy-steps.j2:
  Remove ssh_known_hosts_hostnames parameter
  Remove ssh_known_hosts variable in config-download output
  Set tripleo_ssh_known_hosts_use_template var to true when including
    the tripleo-ssh-known-hosts role to activate template mode.
extraconfig/tasks/ssh/host_public_key.yaml:
  Template removed as it was deprecated and is no longer used.
extraconfig/tasks/ssh/known_hosts_config.yaml:
  Template removed as it was deprecated and is no longer used.
overcloud-resource-registry-puppet.j2.yaml:
  Mappings for Ssh known hosts resources removed
overcloud.j2.yaml:
  Resources removed: SshKnownHostsConfig, SshKnownHostsHostnames,
    {{role.name}}SshKnownHostsDeployment
  Removed passing in ssh_known_hosts_hostnames parameter to
    common/deploy-steps.j2
puppet/role.role.j2.yaml:
  Removed SshHostPubKey and SshKnownHostsHostnames resources
  Removed known_hosts_entry and known_hosts_hostnames stack outputs
  Add role_networks to set Ansible group vars which is a list of enabled
    networks for the role

Change-Id: I10d0de42acc0b88b7947b464e976b5d0b9067ca2
2019-07-13 11:50:01 +00:00
Emilien Macchi 55ad225844 Remove service_names hieradata file
The service_names isn't useful anymore:

- hiera('service_names') has been replaced by hiera('enabled_services')
- sensu::subscriptions moved under the {{role.name.lower()}}_extraconfig
  hieradata file.

This is part of the effort which aims to reduce the number of hieradata
files.

Depends-On: I457f2c81a2cf6cc2f42dc4585b41b0d91dacc059
Change-Id: I22081888541e059cd9f258d15990f58df78c38d2
Closes-Bug: #1835551
2019-07-12 03:55:01 +00:00
James Slagle c5ba2cec81 Use Ansible for {{role}} and host_extraconfig hieradata
Migrates these hieradata files to use the cloud_domain and fqdn
templates from tripleo-hieradata. The templates have more meaningful
names to actually represent the data that these hieradata files contain.

Detailed changes:
common/deploy-steps.j2:
  Add parameter for CloudDomain and add it to the Ansible global vars
  Remove the Per-host hieradata tasks and parameters as they are no longer used
  Add cloud_domain and fqdn to list of templates for tripleo-hieradata
overcloud.j2.yaml:
  Add role_networks to HieradataVars for each role
  Replace {{role}} and host_extraconfig from hieradata hierarchy with
    cloud_domain and fqdn.
puppet/role.role.j2.yaml:
  Remove {{role}} hieradata from hieradata Datafiles as the template is
    now used instead.
  Remove per host hieradata resources and output as they are no longer
    used.

Depends-On: I9c038399fccc4730b73e1a52281d7256ea689ee9
Change-Id: I136fb7aa864a2a3668f5a3845f3ded28b13bfe43
2019-07-10 18:13:03 +00:00
James Slagle 27e7005ad4 Use Ansible for net_ip_map hieradata
Migrates the net_ip_map hieradata from Heat to the tripleo-hieradata
role.

Detailed changes:
network/ports/port.j2:
  cidr output added for the network subnet cidr of the port
  port for a role
network/ports/noop.yaml:
  cidr output for compatiblity with port template interface
puppet/role.role.j2.yaml:
  {{network.name}}_cidr output added for the each networks subnet cidr
  Remove the net_ip_map hieradata from the per host datafiles generated
  by Heat as tripleo-hieradata template will be used instead.
overcloud.j2.yaml:
  consume cidr outputs from the roles, as well as the ctlplane subnet
  cidr and set them as hieradata vars that get passed into the
  templating process for tripleo-hieradata
common/deploy-steps.j2:
  Add a networks data structure to the global vars setting some needed
  vars for tripleo-heiradata.
  Use the net_ip_map template from tripleo-hieradata

Change-Id: Ib30e8347e1a50efec2b6a97482dc98c383cb7cf7
Depends-On: Iaec3654900f250eacf39c7748df166b716937358
2019-07-10 18:12:48 +00:00
Harald Jensås 7a52a6986e Drop EC2MetadataIp parameter and its uses
Since https://review.opendev.org/656581 is merged (and the revert,
reverting the revert ...) there is no metadata service running.

This change removes all things related to setting up routes
to the metadata service, i.e the EC2MetadataIp. As well as NAT
firewall redirect rule used only on the undercloud but disabled
by default.

Blueprint: nova-less-deploy
Change-Id: Ic4ea74b45c566048e32dde82d2bf00498f932af6
2019-07-05 14:05:59 +02:00
Zuul ba4051a7eb Merge "Revert "Revert "Remove os-collect-config related poperties and attributes""" 2019-07-03 17:44:32 +00:00
Rabi Mishra 5ba1fd2bc7 Revert "Revert "Remove os-collect-config related poperties and attributes""
Root cause fix in heat https://review.opendev.org/#/c/668718/ has landed. 

This reverts commit b5a2a61dfe.

Change-Id: I9222fb6cc0c84d871bd7d8a4808e1212fbaf3a4e
2019-07-03 08:53:29 +00:00
Zuul 437784cbe3 Merge "Revert "Remove os-collect-config related poperties and attributes"" 2019-07-02 16:32:45 +00:00
Sergii Golovatiuk b5a2a61dfe Revert "Remove os-collect-config related poperties and attributes"
This reverts commit 89e9fe53b2.

Closes-Bug:  #1834881

Change-Id: I131cbafc126bcc4dbea5d38e0ff7adc177d114bd
2019-07-01 15:32:16 +00:00
Emilien Macchi e115e14e53 Use Ansible to configure the Hiera config
Replace the Heat resources which used to manage the hiera config file
and now use Ansible with the new tripleo-hieradata role.

Remove {{server_resource_name}}Deployment and
{{server_resource_name}}Config resources not needed anymore.

Change-Id: I88fe3460af93b83cc086afeb1c2b959bbb720470
implements: blueprint reduce-deployment-resources
Depends-On: Ia5f11ea1a2f16b736ed7053c5182c7f5a7eb1f4b
2019-06-21 10:15:34 -04:00