Guest User

Untitled

a guest
Jun 25th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.89 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4. "fmt"
  5. "log"
  6.  
  7. yaml "gopkg.in/yaml.v2"
  8. )
  9.  
  10. var data = `---
  11. paths:
  12. - name: '^.ssh'
  13. directory:
  14. group: _user
  15. mode: 0700
  16. user: _user
  17.  
  18. file:
  19. group: _user
  20. mode: 0600
  21. user: _user
  22.  
  23. - name: '^.test'
  24. directory:
  25. group: _user
  26. mode: 0777
  27. user: _user
  28. file:
  29. group: _user
  30. mode: 0655
  31. user: _user`
  32.  
  33. type Y struct {
  34. Paths []struct {
  35. Name string
  36. Directory struct {
  37. Group string
  38. Mode string
  39. User string
  40. }
  41. File struct {
  42. Group string
  43. Mode string
  44. User string
  45. }
  46. }
  47. }
  48.  
  49. func main() {
  50. directories := Y{}
  51. err := yaml.Unmarshal([]byte(data), &directories)
  52. if err != nil {
  53. log.Fatal(err)
  54. }
  55.  
  56. for _, path := range directories.Paths {
  57. fmt.Printf("Path: %s\n", path.Name)
  58. fmt.Printf("Directory Mode: %s\n", path.Directory.Mode)
  59. fmt.Printf("File mode: %s\n", path.File.Mode)
  60. }
  61. }
Add Comment
Please, Sign In to add comment