Skip to content

Commit

Permalink
Robustified the reading of the serial number file
Browse files Browse the repository at this point in the history
  • Loading branch information
craigpratt committed Nov 10, 2021
1 parent ed899c0 commit 0dace86
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion micronets-gw-service/app/netreach_adapter.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ def __init__ (self, config):
# Caching device MACs to map hostapd notifications
self.device_mac_cache = {}
self.micronets_api_prefix = f"http://{config['LISTEN_HOST']}:{config['LISTEN_PORT']}/gateway/v1"
self.serial_number = self.serial_number_file.read_text().strip()
self.serial_number = self.serial_number_file.read_text().strip() if self.serial_number_file.exists() else None
self.reg_token = self.reg_token_file.read_text().strip() if self.reg_token_file.exists() else None
if not self.management_address and self.management_interface:
logger.info(f"NetreachAdapter: Setting management address to {self.management_interface} address")
Expand Down Expand Up @@ -99,6 +99,12 @@ def set_mqtt_connection_state(self, new_state):

async def _kickoff_cloud_connection(self):
logger.info(f"NetreachAdapter:_kickoff_cloud_connection()")

if not self.serial_number:
logger.warning(f"NetreachAdapter:_kickoff_cloud_connection: Cannot register with controller - "
f"no serial number defined ({self.serial_number_file} does not exist?)")
raise Exception("No serial number defined - cannot continue")

if not self.pub_key_file.exists() and not self.reg_token_file.exists():
logger.warning(f"NetreachAdapter:_kickoff_cloud_connection: Cannot register with controller - "
"no keypair or registration token")
Expand Down

0 comments on commit 0dace86

Please # to comment.