@@ -71,38 +71,7 @@ func (s Sync) syncPaths(delete bool, local, remote string) error {
71
71
return nil
72
72
}
73
73
74
- func (s Sync )remoteMkDir ()error {
75
- ctx ,cancel := context .WithTimeout (context .Background (),time .Minute )
76
- defer cancel ()
77
-
78
- conn ,err := s .Client .DialWsep (ctx ,s .Environment )
79
- if err != nil {
80
- return err
81
- }
82
- defer conn .Close (websocket .CloseNormalClosure ,"" )
83
-
84
- execer := wsep .RemoteExecer (conn )
85
- process ,err := execer .Start (ctx , wsep.Command {
86
- Command :"mkdir" ,
87
- Args : []string {"-p" ,s .RemoteDir },
88
- })
89
- if err != nil {
90
- return err
91
- }
92
- go io .Copy (os .Stdout ,process .Stderr ())
93
- go io .Copy (os .Stderr ,process .Stdout ())
94
-
95
- err = process .Wait ()
96
- if code ,ok := err .(wsep.ExitError );ok {
97
- return fmt .Errorf ("mkdir exit status: %v" ,code )
98
- }
99
- if err != nil {
100
- return xerrors .Errorf ("execution failure: %w" ,err )
101
- }
102
- return nil
103
- }
104
-
105
- func (s Sync )remoteRm (ctx context.Context ,remote string )error {
74
+ func (s Sync )remoteCmd (ctx context.Context ,prog string ,args ... string )error {
106
75
conn ,err := s .Client .DialWsep (ctx ,s .Env )
107
76
if err != nil {
108
77
return err
@@ -111,8 +80,8 @@ func (s Sync) remoteRm(ctx context.Context, remote string) error {
111
80
112
81
execer := wsep .RemoteExecer (conn )
113
82
process ,err := execer .Start (ctx , wsep.Command {
114
- Command :"rm" ,
115
- Args :[] string { "-rf" , remote } ,
83
+ Command :prog ,
84
+ Args :args ,
116
85
})
117
86
if err != nil {
118
87
return err
@@ -122,7 +91,7 @@ func (s Sync) remoteRm(ctx context.Context, remote string) error {
122
91
123
92
err = process .Wait ()
124
93
if code ,ok := err .(wsep.ExitError );ok {
125
- return fmt .Errorf ("rm exit status: %v" ,code )
94
+ return fmt .Errorf ("%s exit status: %v" , prog ,code )
126
95
}
127
96
if err != nil {
128
97
return xerrors .Errorf ("execution failure: %w" ,err )
@@ -175,7 +144,7 @@ func (s Sync) handleDelete(localPath string) error {
175
144
ctx ,cancel := context .WithTimeout (context .Background (),time .Minute )
176
145
defer cancel ()
177
146
178
- return s .remoteRm (ctx ,s .convertPath (localPath ))
147
+ return s .remoteCmd (ctx , "rm" , "-rf" ,s .convertPath (localPath ))
179
148
}
180
149
181
150
func (s Sync )handleRename (localPath string )error {
@@ -291,7 +260,10 @@ func (s Sync) Run() error {
291
260
}
292
261
defer notify .Stop (events )
293
262
294
- s .remoteMkDir ()
263
+ ctx ,cancel := context .WithTimeout (context .Background (),time .Minute )
264
+ defer cancel ()
265
+
266
+ s .remoteCmd (ctx ,"mkdir" ,"-p" ,s .RemoteDir )
295
267
296
268
ap := activity .NewPusher (s .Client ,s .Env .ID ,activityName )
297
269
ap .Push ()