code: def load_remote_settings(self, remote_bucket, remote_file):
          
          if not self.session:
              boto_session = boto3.Session()
          else:
              boto_session = self.session
  
          s3 = boto_session.resource('s3')
          try:
              remote_env_object = s3.Object(remote_bucket, remote_file).get()
          except Exception as e:  # pragma: no cover
              # catch everything aws might decide to raise
              print('Could not load remote settings file.', e)
              return
  
          try:
              content = remote_env_object['Body'].read()
          except Exception as e:  # pragma: no cover
              # catch everything aws might decide to raise
              print('Exception while reading remote settings file.', e)
              return
  
          try:
              settings_dict = json.loads(content)
          except (ValueError, TypeError):  # pragma: no cover
              print('Failed to parse remote settings!')
              return
  
          # add each key-value to environment - overwrites existing keys!
          for key, value in settings_dict.items():
              if self.settings.LOG_LEVEL == "DEBUG":
                  print('Adding {} -> {} to environment'.format(
                      key,
                      value
                  ))
              # Environment variable keys can't be Unicode
              # https://github.com/Miserlou/Zappa/issues/604
              try:
                  os.environ[str(key)] = value
              except Exception:
                  if self.settings.LOG_LEVEL == "DEBUG":
                      print("Environment variable keys must be non-unicode!")
docs: Attempt to read a file from s3 containing a flat json object. Adds each
          key->value pair as environment variables. Helpful for keeping
          sensitiZve or stage-specific configuration variables in s3 instead of
          version control.