Skip to content

Commit 6728223

Browse files
committed
Fix invalid escape sequence warnings in ssd.py
Use raw string literals (r'...') for all regex patterns passed to _parse_re() to avoid SyntaxWarning for \s, \d etc. in non-raw strings. Fixes Remaining_Life_Left pattern and all other _parse_re call sites.
1 parent 95666c6 commit 6728223

File tree

1 file changed

+21
-21
lines changed
  • sonic_platform_base/sonic_storage

1 file changed

+21
-21
lines changed

sonic_platform_base/sonic_storage/ssd.py

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -153,32 +153,32 @@ def fetch_generic_ssd_info(self, diskdev):
153153
self.ssd_info = self._execute_shell(self.vendor_ssd_utility["Generic"]["utility"].format(diskdev))
154154

155155
def parse_nvme_ssd_info(self):
156-
self.model = self._parse_re('Model Number:\s*(.+?)\n', self.ssd_info)
156+
self.model = self._parse_re(r'Model Number:\s*(.+?)\n', self.ssd_info)
157157

158-
health_raw = self._parse_re('Percentage Used\s*(.+?)\n', self.ssd_info)
158+
health_raw = self._parse_re(r'Percentage Used\s*(.+?)\n', self.ssd_info)
159159
if health_raw == NOT_AVAILABLE:
160160
self.health = NOT_AVAILABLE
161161
else:
162162
health_raw = health_raw.split()[-1]
163163
self.health = 100 - float(health_raw.strip('%'))
164164

165-
temp_raw = self._parse_re('Temperature\s*(.+?)\n', self.ssd_info)
165+
temp_raw = self._parse_re(r'Temperature\s*(.+?)\n', self.ssd_info)
166166
if temp_raw == NOT_AVAILABLE:
167167
self.temperature = NOT_AVAILABLE
168168
else:
169169
temp_raw = temp_raw.split()[-2]
170170
self.temperature = float(temp_raw)
171171

172-
spare_blocks_raw = self._parse_re('Available Spare\s*(.+?)\n', self.ssd_info)
172+
spare_blocks_raw = self._parse_re(r'Available Spare\s*(.+?)\n', self.ssd_info)
173173
if spare_blocks_raw != NOT_AVAILABLE:
174174
spare_blocks_raw = spare_blocks_raw.split()[-1]
175175
self.reserved_blocks = float(spare_blocks_raw.strip('%'))
176176

177-
disk_io_reads_raw = self._parse_re('Data Units Read\s*(.+?)\n', self.ssd_info)
177+
disk_io_reads_raw = self._parse_re(r'Data Units Read\s*(.+?)\n', self.ssd_info)
178178
if disk_io_reads_raw != NOT_AVAILABLE:
179179
self.disk_io_reads = disk_io_reads_raw.split(':')[-1].strip()
180180

181-
disk_io_writes_raw = self._parse_re('Data Units Written\s*(.+?)\n', self.ssd_info)
181+
disk_io_writes_raw = self._parse_re(r'Data Units Written\s*(.+?)\n', self.ssd_info)
182182
if disk_io_writes_raw != NOT_AVAILABLE:
183183
self.disk_io_writes = disk_io_writes_raw.split(':')[-1].strip()
184184

@@ -188,9 +188,9 @@ def parse_generic_ssd_info(self):
188188
if "nvme" in self.dev:
189189
self.parse_nvme_ssd_info()
190190
else:
191-
self.model = self._parse_re('Device Model:\s*(.+?)\n', self.ssd_info)
191+
self.model = self._parse_re(r'Device Model:\s*(.+?)\n', self.ssd_info)
192192

193-
health_raw = self._parse_re('Remaining_Lifetime_Perc\s*(.+?)\n', self.ssd_info)
193+
health_raw = self._parse_re(r'Remaining_Lifetime_Perc\s*(.+?)\n', self.ssd_info)
194194
if health_raw == NOT_AVAILABLE:
195195
for health_id in GENERIC_HEALTH_ID:
196196
health_raw = self.parse_id_number(health_id, self.ssd_info)
@@ -200,7 +200,7 @@ def parse_generic_ssd_info(self):
200200
else:
201201
self.health = health_raw.split()[-1]
202202

203-
temp_raw = self._parse_re('Temperature_Celsius\s*(.+?)\n', self.ssd_info)
203+
temp_raw = self._parse_re(r'Temperature_Celsius\s*(.+?)\n', self.ssd_info)
204204
if temp_raw == NOT_AVAILABLE:
205205
self.temperature = NOT_AVAILABLE
206206
else:
@@ -219,15 +219,15 @@ def parse_generic_ssd_info(self):
219219
self.reserved_blocks = rbc_raw.split()[-1]
220220
break
221221

222-
self.serial = self._parse_re('Serial Number:\s*(.+?)\n', self.ssd_info)
223-
self.firmware = self._parse_re('Firmware Version:\s*(.+?)\n', self.ssd_info)
222+
self.serial = self._parse_re(r'Serial Number:\s*(.+?)\n', self.ssd_info)
223+
self.firmware = self._parse_re(r'Firmware Version:\s*(.+?)\n', self.ssd_info)
224224

225225
def parse_innodisk_info(self):
226226
if self.vendor_ssd_info:
227-
if self.health == NOT_AVAILABLE: self.health = self._parse_re('Health:\s*(.+?)%', self.vendor_ssd_info)
228-
if self.temperature == NOT_AVAILABLE: self.temperature = self._parse_re('Temperature\s*\[\s*(.+?)\]', self.vendor_ssd_info)
229-
if self.firmware == NOT_AVAILABLE: self.firmware = (self._parse_re('.*FW.*', self.vendor_ssd_info)).split()[-1]
230-
if self.serial == NOT_AVAILABLE: self.serial = (self._parse_re('.*Serial.*', self.vendor_ssd_info)).split()[-1]
227+
if self.health == NOT_AVAILABLE: self.health = self._parse_re(r'Health:\s*(.+?)%', self.vendor_ssd_info)
228+
if self.temperature == NOT_AVAILABLE: self.temperature = self._parse_re(r'Temperature\s*\[\s*(.+?)\]', self.vendor_ssd_info)
229+
if self.firmware == NOT_AVAILABLE: self.firmware = (self._parse_re(r'.*FW.*', self.vendor_ssd_info)).split()[-1]
230+
if self.serial == NOT_AVAILABLE: self.serial = (self._parse_re(r'.*Serial.*', self.vendor_ssd_info)).split()[-1]
231231

232232
if self.health == NOT_AVAILABLE:
233233
health_raw = self.parse_id_number("[{}]".format(hex(INNODISK_HEALTH_ID)[2:]).upper(), self.vendor_ssd_info)
@@ -262,7 +262,7 @@ def parse_innodisk_info(self):
262262

263263
def parse_virtium_info(self):
264264
if self.vendor_ssd_info:
265-
vendor_temp = self._parse_re('Temperature_Celsius\s*\d*\s*(\d+?)\s+', self.vendor_ssd_info)
265+
vendor_temp = self._parse_re(r'Temperature_Celsius\s*\d*\s*(\d+?)\s+', self.vendor_ssd_info)
266266
if vendor_temp != NOT_AVAILABLE:
267267
self.temperature = vendor_temp
268268

@@ -275,8 +275,8 @@ def parse_virtium_info(self):
275275
health_raw = self.parse_id_number(VIRTIUM_HEALTH_ID, self.vendor_ssd_info)
276276
self.health = float(health_raw.split()[2]) if health_raw != NOT_AVAILABLE else NOT_AVAILABLE
277277
else :
278-
nand_endurance = self._parse_re('NAND_Endurance\s*\d*\s*(\d+?)\s+', self.vendor_ssd_info)
279-
avg_erase_count = self._parse_re('Average_Erase_Count\s*\d*\s*(\d+?)\s+', self.vendor_ssd_info)
278+
nand_endurance = self._parse_re(r'NAND_Endurance\s*\d*\s*(\d+?)\s+', self.vendor_ssd_info)
279+
avg_erase_count = self._parse_re(r'Average_Erase_Count\s*\d*\s*(\d+?)\s+', self.vendor_ssd_info)
280280
if nand_endurance != NOT_AVAILABLE and avg_erase_count != NOT_AVAILABLE:
281281
try:
282282
self.health = 100 - (float(avg_erase_count) * 100 / float(nand_endurance))
@@ -286,7 +286,7 @@ def parse_virtium_info(self):
286286
else:
287287
health_raw = NOT_AVAILABLE
288288
try:
289-
pattern = 'Remaining_Life_Left\s*\d*\s*(\d+?)\s+'
289+
pattern = r'Remaining_Life_Left\s*\d*\s*(\d+?)\s+'
290290
health_raw = self._parse_re(pattern, self.vendor_ssd_info)
291291
self.health = float(health_raw.split()[-1]) if health_raw != NOT_AVAILABLE else NOT_AVAILABLE
292292
except ValueError as ex:
@@ -329,9 +329,9 @@ def parse_swissbit_info(self):
329329

330330
def parse_micron_info(self):
331331
if self.vendor_ssd_info:
332-
health_raw = self._parse_re('{}\s*(.+?)\n'.format('Percent_Lifetime_Used'), self.vendor_ssd_info)
332+
health_raw = self._parse_re(r'{}\s*(.+?)\n'.format('Percent_Lifetime_Used'), self.vendor_ssd_info)
333333
if health_raw == NOT_AVAILABLE:
334-
health_raw = self._parse_re('{}\s*(.+?)\n'.format('Percent_Lifetime_Remain'), self.vendor_ssd_info)
334+
health_raw = self._parse_re(r'{}\s*(.+?)\n'.format('Percent_Lifetime_Remain'), self.vendor_ssd_info)
335335
self.health = health_raw.split()[-1]
336336
else:
337337
self.health = str(100 - int(health_raw.split()[-1]))

0 commit comments

Comments
 (0)