mirror of
https://github.com/ansible/ansible-documentation.git
synced 2026-03-26 13:18:58 +07:00
Fix distro fact handling for Flatcar (#77635)
* Fix distro fact handling for Flatcar The existence of the file /etc/flatcar/update.conf depends on bootstrap configuration typically provided by the user. For that reason this file is unsuitable for determining distro facts for Flatcar Container Linux. The distribution_release fact is meaningless in the case of Flatcar since Flatcar doesn't have named releases. The distribution_version fact, however, IS meaningful and should contain a number such as "3139.2.0". - Use /etc/os-release instead of /etc/flatcar/update.conf. - Drop the distribution_release fact. - Set the distribution_version fact. - Update distro test fixture for Flatcar - Generate the fixture using gen_distribution_version_testcase.py. - Override result.distribution and result.os_family manually as the generator script gives wrong values. - Use a recent Flatcar version. Signed-off-by: Johanan Liebermann <jliebermann@microsoft.com>
This commit is contained in:
committed by
GitHub
parent
77ba025a13
commit
fbd828673d
@@ -41,7 +41,6 @@ filelist = [
|
||||
'/etc/altlinux-release',
|
||||
'/etc/os-release',
|
||||
'/etc/coreos/update.conf',
|
||||
'/etc/flatcar/update.conf',
|
||||
'/usr/lib/os-release',
|
||||
]
|
||||
|
||||
|
||||
@@ -75,7 +75,7 @@ class DistributionFiles:
|
||||
{'path': '/etc/sourcemage-release', 'name': 'SMGL'},
|
||||
{'path': '/usr/lib/os-release', 'name': 'ClearLinux'},
|
||||
{'path': '/etc/coreos/update.conf', 'name': 'Coreos'},
|
||||
{'path': '/etc/flatcar/update.conf', 'name': 'Flatcar'},
|
||||
{'path': '/etc/os-release', 'name': 'Flatcar'},
|
||||
{'path': '/etc/os-release', 'name': 'NA'},
|
||||
)
|
||||
|
||||
@@ -453,15 +453,17 @@ class DistributionFiles:
|
||||
flatcar_facts = {}
|
||||
distro = get_distribution()
|
||||
|
||||
if distro.lower() == 'flatcar':
|
||||
if not data:
|
||||
return False, flatcar_facts
|
||||
release = re.search("^GROUP=(.*)", data)
|
||||
if release:
|
||||
flatcar_facts['distribution_release'] = release.group(1).strip('"')
|
||||
else:
|
||||
if distro.lower() != 'flatcar':
|
||||
return False, flatcar_facts
|
||||
|
||||
if not data:
|
||||
return False, flatcar_facts
|
||||
|
||||
version = re.search("VERSION=(.*)", data)
|
||||
if version:
|
||||
flatcar_facts['distribution_major_version'] = version.group(1).strip('"').split('.')[0]
|
||||
flatcar_facts['distribution_version'] = version.group(1).strip('"')
|
||||
|
||||
return True, flatcar_facts
|
||||
|
||||
def parse_distribution_file_ClearLinux(self, name, data, path, collected_facts):
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
{
|
||||
"name": "Flatcar Container Linux",
|
||||
"input": {
|
||||
"/usr/lib/os-release": "NAME=\"Flatcar Container Linux by Kinvolk\"\nID=flatcar\nID_LIKE=coreos\nVERSION=2492.0.0\nVERSION_ID=2492.0.0\nBUILD_ID=2020-04-28-2210\nPRETTY_NAME=\"Flatcar Container Linux by Kinvolk 2492.0.0 (Rhyolite)\"\nANSI_COLOR=\"38;5;75\"\nHOME_URL=\"https://flatcar-linux.org/\"\nBUG_REPORT_URL=\"https://issues.flatcar-linux.org\"",
|
||||
"/etc/lsb-release": "DISTRIB_ID=\"Flatcar Container Linux by Kinvolk\"\nDISTRIB_RELEASE=2492.0.0\nDISTRIB_CODENAME=\"Rhyolite\"\nDISTRIB_DESCRIPTION=\"Flatcar Container Linux by Kinvolk 2492.0.0 (Rhyolite)\""
|
||||
},
|
||||
"platform.dist": ["", "", ""],
|
||||
"distro": {
|
||||
"codename": "Rhyolite",
|
||||
"id": "flatcar",
|
||||
"id_like": "coreos",
|
||||
"name": "Flatcar",
|
||||
"version": "2492.0.0",
|
||||
"version_best": "2492.0.0",
|
||||
"os_release_info": {},
|
||||
"lsb_release_info": {}
|
||||
},
|
||||
"platform.release": "",
|
||||
"result": {
|
||||
"distribution": "Flatcar",
|
||||
"distribution_major_version": "2492",
|
||||
"distribution_version": "2492.0.0"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"name": "Flatcar Container Linux by Kinvolk 3139.2.0",
|
||||
"distro": {
|
||||
"codename": "",
|
||||
"id": "flatcar",
|
||||
"name": "Flatcar Container Linux by Kinvolk",
|
||||
"version": "3139.2.0",
|
||||
"version_best": "3139.2.0",
|
||||
"lsb_release_info": {},
|
||||
"os_release_info": {
|
||||
"name": "Flatcar Container Linux by Kinvolk",
|
||||
"id": "flatcar",
|
||||
"id_like": "coreos",
|
||||
"version": "3139.2.0",
|
||||
"version_id": "3139.2.0",
|
||||
"build_id": "2022-04-05-1803",
|
||||
"pretty_name": "Flatcar Container Linux by Kinvolk 3139.2.0 (Oklo)",
|
||||
"ansi_color": "38;5;75",
|
||||
"home_url": "https://flatcar-linux.org/",
|
||||
"bug_report_url": "https://issues.flatcar-linux.org",
|
||||
"flatcar_board": "amd64-usr",
|
||||
"cpe_name": "cpe:2.3:o:flatcar-linux:flatcar_linux:3139.2.0:*:*:*:*:*:*:*"
|
||||
}
|
||||
},
|
||||
"input": {
|
||||
"/etc/os-release": "NAME=\"Flatcar Container Linux by Kinvolk\"\nID=flatcar\nID_LIKE=coreos\nVERSION=3139.2.0\nVERSION_ID=3139.2.0\nBUILD_ID=2022-04-05-1803\nPRETTY_NAME=\"Flatcar Container Linux by Kinvolk 3139.2.0 (Oklo)\"\nANSI_COLOR=\"38;5;75\"\nHOME_URL=\"https://flatcar-linux.org/\"\nBUG_REPORT_URL=\"https://issues.flatcar-linux.org\"\nFLATCAR_BOARD=\"amd64-usr\"\nCPE_NAME=\"cpe:2.3:o:flatcar-linux:flatcar_linux:3139.2.0:*:*:*:*:*:*:*\"\n",
|
||||
"/etc/lsb-release": "DISTRIB_ID=\"Flatcar Container Linux by Kinvolk\"\nDISTRIB_RELEASE=3139.2.0\nDISTRIB_CODENAME=\"Oklo\"\nDISTRIB_DESCRIPTION=\"Flatcar Container Linux by Kinvolk 3139.2.0 (Oklo)\"\n",
|
||||
"/usr/lib/os-release": "NAME=\"Flatcar Container Linux by Kinvolk\"\nID=flatcar\nID_LIKE=coreos\nVERSION=3139.2.0\nVERSION_ID=3139.2.0\nBUILD_ID=2022-04-05-1803\nPRETTY_NAME=\"Flatcar Container Linux by Kinvolk 3139.2.0 (Oklo)\"\nANSI_COLOR=\"38;5;75\"\nHOME_URL=\"https://flatcar-linux.org/\"\nBUG_REPORT_URL=\"https://issues.flatcar-linux.org\"\nFLATCAR_BOARD=\"amd64-usr\"\nCPE_NAME=\"cpe:2.3:o:flatcar-linux:flatcar_linux:3139.2.0:*:*:*:*:*:*:*\"\n"
|
||||
},
|
||||
"platform.dist": [
|
||||
"flatcar",
|
||||
"3139.2.0",
|
||||
""
|
||||
],
|
||||
"result": {
|
||||
"distribution": "Flatcar",
|
||||
"distribution_version": "3139.2.0",
|
||||
"distribution_release": "NA",
|
||||
"distribution_major_version": "3139",
|
||||
"os_family": "Flatcar"
|
||||
},
|
||||
"platform.release": "5.15.32-flatcar"
|
||||
}
|
||||
Reference in New Issue
Block a user