code: func (a *Adapter) writeOutput() error {
  	arr := mapToArray(a.groups)
  	b, _ := json.MarshalIndent(arr, "", "    ")
  
  	dir, _ := filepath.Split(a.output)
  	tmpfile, err := ioutil.TempFile(dir, "sd-adapter")
  	if err != nil {
  		return err
  	}
  	defer tmpfile.Close()
  
  	_, err = tmpfile.Write(b)
  	if err != nil {
  		return err
  	}
  
  	err = os.Rename(tmpfile.Name(), a.output)
  	if err != nil {
  		return err
  	}
  	return nil
  }
docs: // Writes JSON formatted targets to output file.