Browse Source
If we have XFS partitions formatted with ftype=0,
the upgrades will fail because ftype=0 is incompatible
with the docker overlayfs driver.
Related-Bug: 1765121
Change-Id: I895fc83d148523c283664080b7b1bf75d53d9edb
(cherry picked from commit a5e63ee725
)
changes/09/564109/2
2 changed files with 47 additions and 0 deletions
@ -0,0 +1,13 @@
|
||||
--- |
||||
upgrade: |
||||
- | |
||||
Validate that there are no volumes formatted with XFS |
||||
and ftype=0. |
||||
Deployments from OpenStack Kilo or Liberty have XFS |
||||
partitions formatted with ftype=0, which is incompatible |
||||
with the docker overlayfs driver. |
||||
From OpenStack Newton, we have support for XFS ftype=1 |
||||
by default. |
||||
This check will make fail the pre-upgrade validations |
||||
if there are deployments coming back from Kilo or Liberty |
||||
and have XFS partitions with ftype=0. |
@ -0,0 +1,34 @@
|
||||
--- |
||||
- hosts: undercloud, overcloud |
||||
vars: |
||||
metadata: |
||||
name: XFS ftype check |
||||
description: > |
||||
Check if there is at least 1 XFS volume |
||||
with ftype=0 in any deployed node. |
||||
groups: |
||||
- pre-upgrade |
||||
tasks: |
||||
- name: Check if there are XFS volumes with ftype=0 |
||||
become: true |
||||
shell: | |
||||
for dev in $(df -h | grep '/dev/' | grep -v 'tmp' | cut -d' ' -f1) |
||||
do |
||||
parseftype=$(xfs_info $dev | grep ftype=0); |
||||
if [[ ! -z "$parseftype" ]]; then |
||||
ftype="ftype=0"; |
||||
break; |
||||
fi |
||||
done |
||||
echo $ftype; |
||||
register: ftype |
||||
changed_when: false |
||||
- name: Check ftype |
||||
fail: |
||||
msg: > |
||||
XFS volumes formatted using ftype=0 are incompatible |
||||
with the docker overlayfs driver. |
||||
Run xfs_info in {{ ansible_fqdn }} and fix those volumes |
||||
before proceeding with the upgrade. |
||||
when: |
||||
- ftype.stdout == 'ftype=0' |
Loading…
Reference in new issue