@@ -2,10 +2,13 @@ package cmd
2
2
3
3
import (
4
4
"fmt"
5
- "github.com/seknox/fireser/utils"
6
- "github.com/seknox/trasa/cli/config"
7
5
"os"
6
+ "os/user"
7
+ "path/filepath"
8
8
"runtime"
9
+ "strconv"
10
+
11
+ "github.com/seknox/trasa/cli/config"
9
12
10
13
logger "github.com/sirupsen/logrus"
11
14
"github.com/spf13/cobra"
@@ -25,7 +28,7 @@ func init() {
25
28
26
29
if * logToFile {
27
30
28
- f , err := os .OpenFile (utils . GetLogLocation (), os .O_WRONLY | os .O_CREATE | os .O_APPEND , 0644 )
31
+ f , err := os .OpenFile (getLogLocation (), os .O_WRONLY | os .O_CREATE | os .O_APPEND , 0644 )
29
32
if err != nil {
30
33
logger .Fatal (err )
31
34
}
@@ -44,9 +47,9 @@ func init() {
44
47
45
48
var err error
46
49
47
- utils . Context .OS_TYPE = runtime .GOOS
50
+ context .OS_TYPE = runtime .GOOS
48
51
49
- utils . Context . HOME_DIR , utils . Context . U_ID , utils . Context . G_ID , err = utils . GetHomeDirAndUID ()
52
+ context . HOME_DIR , context . U_ID , context . G_ID , err = getHomeDirAndUID ()
50
53
if err != nil {
51
54
fmt .Println (`Could not find home dir` )
52
55
}
@@ -78,3 +81,51 @@ func Execute() {
78
81
os .Exit (1 )
79
82
}
80
83
}
84
+
85
+ func getLogLocation () string {
86
+ switch runtime .GOOS {
87
+ case "darwin" :
88
+ return "/var/log/fireser.log"
89
+ case "linux" :
90
+ return "/var/log/fireser.log"
91
+ case "windows" :
92
+ return filepath .Join (context .HOME_DIR , "fireser.log" )
93
+ default :
94
+ return "fireser.log"
95
+ }
96
+ }
97
+
98
+ var context struct {
99
+ OS_TYPE string
100
+ SSH_CLIENT_NAME string
101
+ HOME_DIR string
102
+ KEYS_DIR_PATH string
103
+ SSH_USERNAME string
104
+ OS_USERNAME string
105
+ U_ID int
106
+ G_ID int
107
+ }
108
+
109
+ func getHomeDirAndUID () (string , int , int , error ) {
110
+
111
+ userc , err := user .Current ()
112
+ // fmt.Println(err)
113
+ // fmt.Println(userc.HomeDir)
114
+
115
+ if err != nil {
116
+ return "" , - 1 , - 1 , err
117
+ }
118
+
119
+ Context .OS_USERNAME = userc .Username
120
+ uid , err := strconv .Atoi (userc .Uid )
121
+ if err != nil {
122
+ return userc .HomeDir , - 1 , - 1 , nil
123
+ }
124
+ gid , err := strconv .Atoi (userc .Gid )
125
+ if err != nil {
126
+ return userc .HomeDir , - 1 , - 1 , nil
127
+ }
128
+
129
+ return userc .HomeDir , uid , gid , nil
130
+
131
+ }
0 commit comments