Command line client for Write.as https://write.as/apps/cli
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

41 wiersze
929 B

  1. package config
  2. import (
  3. "os"
  4. "path/filepath"
  5. "github.com/writeas/writeas-cli/fileutils"
  6. "github.com/writeas/writeas-cli/log"
  7. )
  8. // UserDataDir returns a platform specific directory under the user's home
  9. // directory
  10. func UserDataDir(dataDirName string) string {
  11. return filepath.Join(parentDataDir(), dataDirName)
  12. }
  13. func dataDirExists(dataDirName string) bool {
  14. return fileutils.Exists(dataDirName)
  15. }
  16. func createDataDir(dataDirName string) error {
  17. return os.Mkdir(dataDirName, 0700)
  18. }
  19. // DirMustExist checks for a directory, creates it if not found and either
  20. // panics or logs and error depending on the status of Debug
  21. func DirMustExist(dataDirName string) {
  22. // Ensure we have a data directory to use
  23. if !dataDirExists(dataDirName) {
  24. err := createDataDir(dataDirName)
  25. if err != nil {
  26. if Debug() {
  27. panic(err)
  28. } else {
  29. log.Errorln("Error creating data directory: %s", err)
  30. return
  31. }
  32. }
  33. }
  34. }