code: def templates_match(self, path):
          
          template_path = get_template_path(self.template_dir, path)
          key = 'hardening:template:%s' % template_path
          template_checksum = file_hash(template_path)
          kv = unitdata.kv()
          stored_tmplt_checksum = kv.get(key)
          if not stored_tmplt_checksum:
              kv.set(key, template_checksum)
              kv.flush()
              log('Saved template checksum for %s.' % template_path,
                  level=DEBUG)
              # Since we don't have a template checksum, then assume it doesn't
              # match and return that the template is different.
              return False
          elif stored_tmplt_checksum != template_checksum:
              kv.set(key, template_checksum)
              kv.flush()
              log('Updated template checksum for %s.' % template_path,
                  level=DEBUG)
              return False
  
          # Here the template hasn't changed based upon the calculated
          # checksum of the template and what was previously stored.
          return True
docs: Determines if the template files are the same.
  
          The template file equality is determined by the hashsum of the
          template files themselves. If there is no hashsum, then the content
          cannot be sure to be the same so treat it as if they changed.
          Otherwise, return whether or not the hashsums are the same.
  
          :param path: the path to check
          :returns: boolean