Commit Graph

1695 Commits (43cef529b6881bd29f64d0d373614c0751740103)

Author SHA1 Message Date
Zuul 43cef529b6 Merge "Service virtual IP module and hieradata" 2 years ago
Zuul 2f27ad0c43 Merge "Add snake_case filter" 2 years ago
Harald Jensås db36cf0b8f node provision, generate ansible inventory
Generate an ansible inventory from neutron resource
information when network port management is enabled
in the overcloud node provision cli workflow.

Partial-Implements: blueprint network-data-v2-ports
Change-Id: I7737f9fc5104b769ef78b76e20a019cc1dafba8f
2 years ago
Zuul 34e324638c Merge "Remove unused cli-baremetal-configure.yaml playbook" 2 years ago
Zuul c2a6024c46 Merge "Update Octavia keypair when public key changed" 2 years ago
Zuul a80ceebda1 Merge "Fix param name in container_puppet_config example" 2 years ago
Zuul c8726e39ad Merge "Ensure $HOME dir exists and has the right owner/group" 2 years ago
Zuul c7f3979b60 Merge "Enable fact bits for ceph execution" 2 years ago
Emma Foley db775f7c84 Add snake_case filter
This is intended to be used by tripleo_metrics_qdr and
The filter will convert from THTCamelCase to ansible_snake_case

Change-Id: Iec74b239cbcebaeb6c5f5736e3696e013b697c76
Co-authored-by: Chris Sibbitt <>
2 years ago
Francesco Pantano 7e67d35c3d
Ensure $HOME dir exists and has the right owner/group
This changes adds an additional task to make sure the
output of the useradd module is consistent when the
HOME dir for a given user is created.
In particular this tasks ensure the HOME dir has the
right owner/group associated to the user that has been

Closes-Bug: #1917856
Change-Id: I64846594123b9d5f333082b3f7714186713caffb
2 years ago
Zuul ff6d3f7d5a Merge "[tripleo_transfer] Do transfers directly from src to dst" 2 years ago
Zuul 49f843384f Merge "Remove container delete task" 2 years ago
Harald Jensås e990728082 Service virtual IP module and hieradata
Adds a module tripleo_service_vip which manages
a neutron API port resource for service virtuap IPs.
(redis and ovn_dbs) when neutron service is available.

When the service network is 'ctlplane' the module does
a find_port for the controlplane_virtual_ip so that the
ctlplane VIP is used in this case.

When the neutron service is not available the module
looks for a pre-defined ip address in the fixed_ips
option. If present this address is used, if not present
an exception is raised.

The module updates the 'service_vip_vars.yaml' file in
the playbook directory so that include_vars can be used
to load the variables.

The change also updates action/
and tripleo_hieradata templates to use the new variable
to source the service virtual IPs for redis and ovn_dbs

Related: blueprint network-data-v2-ports
Change-Id: I6b2ae7388f8af15f2fd3dcbc5e671c169700fff6
2 years ago
Zuul abdcbbac44 Merge "Build osd caps section when there's at least >= 1 pool" 2 years ago
Alex Schultz ff8d309e95 Enable fact bits for ceph execution
ceph-ansible still requires that all the facts be collected by default
and inject fact vars is enabled. We want to turn that off for tripleo,
but in the mean time we need to force it back on when in run ansible for

Change-Id: I607c29c45148b57dee34741397cf7a16ced8ef78
Related-Bug: #1915761
Related-Bug: #1917621
2 years ago
Kevin Carter be02313503
Remove container delete task
We no longer have swift on the undercloud so this task no longer needs
to exist. With it here we're unable to delete an overcloud via the CLI.

Change-Id: I20bb3ea3b65c42638f81363afeb84dc3e9aa1764
Signed-off-by: Kevin Carter <>
2 years ago
Jose Luis Franco Arza d7730980c9 [tripleo_transfer] Do transfers directly from src to dst
When running fetch with become, the slurp module will also
be used to fetch the contents of the file for determining
the remote checksum. This effectively doubles the transfer
size [0] and shows up as a MemoryError when the file size
is large enough.

In TripleO this is problematic in large & old deployments
when transferring the /var/lib/mysql folder.

This patch switches to using rsync directly between the src
and dst hosts to transfer the data. This is advantageous not
only for solving the above-mentioned bug, but is also faster.

A simpler implementation using synchronize was attempted [1],
but there were issues with the mistral container which
prevented that approach from being successful.


Closes-Bug: #1908425
Closes-Bug: rhbz#1904681
Closes-Bug: rhbz#1916162

Change-Id: Ifc03f9eb1cb4ca3faec194569f4cb2dace93323f
2 years ago
Zuul 2bd02cc59a Merge "[tripleo_transfer] Convert testing to use delegated driver" 2 years ago
Carlos Goncalves aaf7529d74 Fix param name in container_puppet_config example
Change-Id: I995bdd471911e0122d1170f73033e79935bbbed9
2 years ago
ramishra 21c8f684d1 Remove unused cli-baremetal-configure.yaml playbook
This has never been used in the python-tripleoclient.

Change-Id: I1221b8cd2145f9e3783ff0033a5092250a0d2c92
2 years ago
Francesco Pantano 594642ba8f
Build osd caps section when there's at least >= 1 pool
When Ceph is deployed by TripleO but no services using
it are explicitly enabled in TripleO, an empty pool list
if generated (for the same reason), and the osd caps
results in an empty string, turning the cluster in a
non healthy status.
This patch introduces two new tasks to selectively create
osd caps when profiles >= 0.

Closes-Bug: #1917440
Change-Id: Id165c19121c9036a33b10d6b6d51f3bdc528307b
2 years ago
Sagi Shnaidman 4eee228dc5 Fix triple molecule modules job
Remove --detach when not starting container.
Change-Id: I9751aa9b6739e8083103791579c1d5a71b938b0b
2 years ago
Carlos Goncalves bcc3efd650 Update Octavia keypair when public key changed
A change in the desired public key was not being reflected in the
Overcloud on stack update/upgrade. TripleO should replace the keypair
even when the desired public key changed, i.e. its fingerprint does not
match the one (possibly) already existing in the overcloud. We should
compare fingerprints and replace (delete and create, no keypair update
option) when they mismatch.

Closes-Bug: #1861031

Change-Id: I953c35c9ec24844598108bc173e84868393a98aa
2 years ago
Jesse Pretorius (odyssey4me) b1dadc2185 [tripleo_transfer] Convert testing to use delegated driver
The current driver is podman which creates problems when we
try to use the synchronize module for the file copy between
hosts. To make room for this option, we switch to using the
delegated driver and two inventory hosts (which are localhost)
instead which is more efficient, more portable and opens more

We also add 'any_errors_fatal: true' to the play
arguments to ensure that any error stops the whole test.

The converge playbook is targeted at localhost, rather than
all instances, because that is the way that the role being
tested is used in TripleO.

Related-Bug: #1908425
Related-Bug: rhbz#1904681
Related-Bug: rhbz#1916162

Change-Id: I4d5049ef863c5685b1d817a865a8a44c4429480c
2 years ago
Harald Jensås 4a6b7c55f9 Fix typo in
Change-Id: I7aba66f55e1e63a233757bc07a65b5669ae782f5
2 years ago
Zuul d1043930be Merge "Modifying playbooks to support python-tripleoclient B&R commands" 2 years ago
Zuul 0faa573c3d Merge "Fixed and rename task name, which does the opposite" 2 years ago
Zuul 7aa6b9989b Merge "Run molecule in systemd scope user" 2 years ago
Zuul 64b8408fdd Merge "Introduce tripleo_run_cephadm role and cephadm playbook" 2 years ago
Zuul bebf097582 Merge "Fix bootstrap ansible_fact" 2 years ago
Juan Pablo Lopez 4ac33dcdbf Modifying playbooks to support python-tripleoclient B&R commands
- Each playbook is now in charged of a single main task: Setup NFS,
  Setup ReaR and Backup.
- prepare-nfs-backup.yaml was added to support the installation and
  configuration of the backup node.
- prepare-undercloud-backup.yaml and prepare-overcloud-backup.yaml
  were modified to support the ReaR installation and configuration.
- cli-undercloud-backup.yaml and cli-overcloud-backup.yaml were modified
  to support the backup of each node. "tags" property was removed to
  avoid tagging the whole role. "connection" property was removed to
  avoid running against localhost because tripleo_target_host is
  not defined.

Bugzilla: #1824806
Change-Id: Id515d06ebceec58db84eef313ca1375bb802282d
2 years ago
Francesco Pantano dc5d83733f
Introduce tripleo_run_cephadm role and cephadm playbook
Since we're still provisioning the Ceph cluster at step2 we need
to call the cephadm playbook the same way as ceph-ansible.
The purpose of this role is to be able to run the cephadm playbook
using external_deploy_steps_tasks.
The actions implemented in this role are:

  1. prepare: build a cephadm dir within the config-download dump
  2. enable_ceph_admin_user via cli-enable-ssh-admin.yaml playbook
  3. translates the tht paramters and make them available to the role
  4. call the ansible playbook that runs cephadm and apply the spec

Change-Id: If066dd19f1e9c75fd6581fddb5b55cb37eb57809
2 years ago
Zuul 903834017d Merge "Support OS_AUTH_TYPE=none in inventory module" 2 years ago
Zuul b391a6946c Merge "Don't query neutron ports to determine ssh user" 2 years ago
Zuul cb2d70cb9d Merge "Fix network port unprovision" 2 years ago
Zuul 66e1e25435 Merge "Remove cli-generate-overcloudrc.yaml playbook" 2 years ago
Alex Schultz 20a1a4c39e Fix bootstrap ansible_fact
Missed the distribution_major_version switch.

Change-Id: I51b71a2c74f954e9a50fb7008f460aee6a74734f
2 years ago
Zuul fa59fc28ca Merge "Option to remove the self-installed ReaR cron task" 2 years ago
Zuul 18c4e0d019 Merge "Set source IPv6 address from inventory vars" 2 years ago
Zuul ba1fd496d1 Merge "Update skeleton role to use ansible_facts" 2 years ago
Zuul 5063afa90b Merge "Use ansible_facts instead" 2 years ago
Juan Badia Payno 34fc42520a Fixed and rename task name, which does the opposite
The task is called PauseXXXX and it realy does the opposite,
this name set the name properly to unPause

Change-Id: Ice9482c635d104c30f1f44e92475dc517a7fd527
2 years ago
ramishra ded71758e2 Remove cli-generate-overcloudrc.yaml playbook
Not used anymore.

Change-Id: I6fa8fc86710e61bc2cb791399973137e056c6c8a
2 years ago
Alex Schultz c0876630bd Update skeleton role to use ansible_facts
Change-Id: I6172f3a3ffa6bc7cfe6b57b198ad3e761d305676
2 years ago
Alex Schultz e7bc62c20e Use ansible_facts instead
In order to ANSIBLE_INJECT_FACT_VARS=False we have to use ansible_facts
instead of ansible_* vars. This change switches our distribution and
hostname related items to use ansible_facts instead.

Change-Id: Id01e754f0cf9f6e98c02f45a4011f3d6f59f80a1
Related-Bug: #1915761
2 years ago
Zuul ca3063c48b Merge "Introduce tripleo_cephadm role" 2 years ago
Zuul c739f33f4e Merge "Reduce fact gathering" 2 years ago
John Fulton 9f28e37aeb
Introduce tripleo_cephadm role
This role is provided as part of the implementation of the
tripleo-ceph spec. It is an Ansible wrapper to call the
cephadm Ceph tool and it contains the Ansible modules
ceph_key and ceph_pool from ceph-ansible for managing
cephx keys and ceph pools.

Implements: blueprint tripleo-ceph
Change-Id: I60d6857b888ef97242c4f4bbf20fbc62de5ef29f
2 years ago
Carlos Goncalves cab9c64438 Set source IPv6 address from inventory vars
Extend FRR configuration to set source IPv6 address, similar to
Change-Id I43852cb3570b8cb12a35f4bc641a42ddfd8ad7f1 for IPv4.

Change-Id: I0b4e3762aea3e25398e82be9f9be3adcc38ee685
2 years ago
Zuul 4dbdd12a84 Merge "Disable RHSM passthrough in UBI" 2 years ago