aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2023-11-16 22:59:22 +0700
committerShulhan <ms@kilabit.info>2023-11-16 22:59:22 +0700
commit4c17c972104e2dc50dbee4138c992f620e7f10bd (patch)
tree49b73e28694857fb490dccda035214f11f5047f0
parentf2b71ae4bf9d264d5c6ea51edc2d402e462e2033 (diff)
downloadawwan-4c17c972104e2dc50dbee4138c992f620e7f10bd.tar.xz
all: refactoring, rename Request to ExecRequest
-rw-r--r--awwan.go4
-rw-r--r--awwan_local_test.go16
-rw-r--r--awwan_play_test.go20
-rw-r--r--awwan_sudo_test.go8
-rw-r--r--cmd/awwan/main.go4
-rw-r--r--exec_request.go (renamed from request.go)18
-rw-r--r--http_response.go2
-rw-r--r--http_server.go4
-rw-r--r--session.go20
-rw-r--r--ssh_client.go2
-rw-r--r--sudo_test.go2
11 files changed, 50 insertions, 50 deletions
diff --git a/awwan.go b/awwan.go
index 2112089..2c5fe79 100644
--- a/awwan.go
+++ b/awwan.go
@@ -163,7 +163,7 @@ func (aww *Awwan) Encrypt(file string) (fileVault string, err error) {
}
// Local execute the script in the local machine using shell.
-func (aww *Awwan) Local(req *Request) (err error) {
+func (aww *Awwan) Local(req *ExecRequest) (err error) {
var (
logp = `Local`
sessionDir = filepath.Dir(req.scriptPath)
@@ -224,7 +224,7 @@ out:
}
// Play execute the script in the remote machine using SSH.
-func (aww *Awwan) Play(req *Request) (err error) {
+func (aww *Awwan) Play(req *ExecRequest) (err error) {
var (
logp = `Play`
sessionDir = filepath.Dir(req.scriptPath)
diff --git a/awwan_local_test.go b/awwan_local_test.go
index 7d610a6..756469f 100644
--- a/awwan_local_test.go
+++ b/awwan_local_test.go
@@ -43,11 +43,11 @@ func TestAwwanLocal(t *testing.T) {
aww.cryptoc.termrw = &mockrw
var (
- req *Request
+ req *ExecRequest
logw bytes.Buffer
)
- req, err = NewRequest(CommandModeLocal, scriptFile, `1-`)
+ req, err = NewExecRequest(CommandModeLocal, scriptFile, `1-`)
if err != nil {
t.Fatal(err)
}
@@ -132,9 +132,9 @@ func TestAwwanLocal_Get(t *testing.T) {
_ = os.Remove(c.fileDest)
- var req *Request
+ var req *ExecRequest
- req, err = NewRequest(CommandModeLocal, script, c.lineRange)
+ req, err = NewExecRequest(CommandModeLocal, script, c.lineRange)
if err != nil {
t.Fatal(err)
}
@@ -255,9 +255,9 @@ func TestAwwanLocal_Put(t *testing.T) {
_ = os.Remove(c.fileDest)
}
- var req *Request
+ var req *ExecRequest
- req, err = NewRequest(CommandModeLocal, script, c.lineRange)
+ req, err = NewExecRequest(CommandModeLocal, script, c.lineRange)
if err != nil {
t.Fatal(err)
}
@@ -353,13 +353,13 @@ func TestAwwanLocal_withEncryption(t *testing.T) {
var (
c testCase
logw bytes.Buffer
- req *Request
+ req *ExecRequest
)
for _, c = range cases {
t.Logf(c.desc)
- req, err = NewRequest(CommandModeLocal, c.script, c.lineRange)
+ req, err = NewExecRequest(CommandModeLocal, c.script, c.lineRange)
if err != nil {
t.Fatal(err)
}
diff --git a/awwan_play_test.go b/awwan_play_test.go
index 0afd100..bba59fc 100644
--- a/awwan_play_test.go
+++ b/awwan_play_test.go
@@ -51,11 +51,11 @@ func TestAwwan_Play_withLocal(t *testing.T) {
}
var (
- req *Request
+ req *ExecRequest
logw bytes.Buffer
)
- req, err = NewRequest(CommandModePlay, scriptFile, `1-`)
+ req, err = NewExecRequest(CommandModePlay, scriptFile, `1-`)
if err != nil {
t.Fatal(err)
}
@@ -112,7 +112,7 @@ func TestAwwan_Play_Get(t *testing.T) {
}}
var (
- req *Request
+ req *ExecRequest
c testCaseGetPut
fi os.FileInfo
gotContent []byte
@@ -125,7 +125,7 @@ func TestAwwan_Play_Get(t *testing.T) {
_ = os.Remove(c.fileDest)
}
- req, err = NewRequest(CommandModePlay, scriptFile, c.lineRange)
+ req, err = NewExecRequest(CommandModePlay, scriptFile, c.lineRange)
if err != nil {
t.Fatal(err)
}
@@ -199,7 +199,7 @@ func TestAwwan_Play_Put(t *testing.T) {
}}
var (
- req *Request
+ req *ExecRequest
c testCaseGetPut
fi os.FileInfo
gotContent []byte
@@ -212,7 +212,7 @@ func TestAwwan_Play_Put(t *testing.T) {
_ = os.Remove(c.fileDest)
}
- req, err = NewRequest(CommandModePlay, scriptFile, c.lineRange)
+ req, err = NewExecRequest(CommandModePlay, scriptFile, c.lineRange)
if err != nil {
t.Fatal(err)
}
@@ -292,7 +292,7 @@ func TestAwwan_Play_SudoGet(t *testing.T) {
var (
mockin = &mockStdin{}
- req *Request
+ req *ExecRequest
c testCaseGetPut
fi os.FileInfo
gotContent []byte
@@ -305,7 +305,7 @@ func TestAwwan_Play_SudoGet(t *testing.T) {
_ = os.Remove(c.fileDest)
}
- req, err = NewRequest(CommandModePlay, scriptFile, c.lineRange)
+ req, err = NewExecRequest(CommandModePlay, scriptFile, c.lineRange)
if err != nil {
t.Fatal(err)
}
@@ -385,7 +385,7 @@ func TestAwwan_Play_SudoPut(t *testing.T) {
}}
var (
- req *Request
+ req *ExecRequest
c testCaseGetPut
fi os.FileInfo
gotContent []byte
@@ -398,7 +398,7 @@ func TestAwwan_Play_SudoPut(t *testing.T) {
_ = os.Remove(c.fileDest)
}
- req, err = NewRequest(CommandModePlay, scriptFile, c.lineRange)
+ req, err = NewExecRequest(CommandModePlay, scriptFile, c.lineRange)
if err != nil {
t.Fatal(err)
}
diff --git a/awwan_sudo_test.go b/awwan_sudo_test.go
index d73fe09..cc7bcc3 100644
--- a/awwan_sudo_test.go
+++ b/awwan_sudo_test.go
@@ -87,7 +87,7 @@ func TestAwwan_Local_SudoGet(t *testing.T) {
script = filepath.Join(baseDir, `get.aww`)
mockin = &mockStdin{}
- req *Request
+ req *ExecRequest
c testCase
gotContent []byte
)
@@ -95,7 +95,7 @@ func TestAwwan_Local_SudoGet(t *testing.T) {
for _, c = range cases {
t.Log(c.desc)
- req, err = NewRequest(CommandModeLocal, script, c.lineRange)
+ req, err = NewExecRequest(CommandModeLocal, script, c.lineRange)
if err != nil {
t.Fatal(err)
}
@@ -184,7 +184,7 @@ func TestAwwan_Local_SudoPut(t *testing.T) {
mockTerm = mock.ReadWriter{}
aww *Awwan
- req *Request
+ req *ExecRequest
c testCase
gotContent []byte
)
@@ -205,7 +205,7 @@ func TestAwwan_Local_SudoPut(t *testing.T) {
_ = os.Remove(c.fileDest)
}
- req, err = NewRequest(CommandModeLocal, script, c.lineRange)
+ req, err = NewExecRequest(CommandModeLocal, script, c.lineRange)
if err != nil {
t.Fatal(err)
}
diff --git a/cmd/awwan/main.go b/cmd/awwan/main.go
index ae6105c..41858cd 100644
--- a/cmd/awwan/main.go
+++ b/cmd/awwan/main.go
@@ -123,7 +123,7 @@ func main() {
var (
cmdMode = strings.ToLower(flag.Arg(0))
- req *awwan.Request
+ req *awwan.ExecRequest
baseDir string
file string
err error
@@ -154,7 +154,7 @@ func main() {
return
case awwan.CommandModeLocal, awwan.CommandModePlay:
- req, err = awwan.NewRequest(cmdMode, flag.Arg(1), flag.Arg(2))
+ req, err = awwan.NewExecRequest(cmdMode, flag.Arg(1), flag.Arg(2))
case awwan.CommandModeServe:
if flag.NArg() <= 1 {
diff --git a/request.go b/exec_request.go
index 4e252ce..dbacc65 100644
--- a/request.go
+++ b/exec_request.go
@@ -17,10 +17,10 @@ import (
// This is set as variable to make it easy overwriting it in testing.
var defLogTimeFormat = time.RFC3339
-// Request for executing local or remote script.
+// ExecRequest request for executing local or remote script.
// Each request define the Mode of execution, Script file to be executed,
// and the lineRange -- list of line numbers to be executed.
-type Request struct {
+type ExecRequest struct {
// Each request may set the Reader where the command read the input.
// The stdin will default to os.DevNull (default of [exec/Cmd]) if
// its nil.
@@ -43,10 +43,10 @@ type Request struct {
lineRange lineRange
}
-// NewRequest create new Request and initialize stdout and stderr to os.Stdout
-// and os.Stderr.
-func NewRequest(mode, script, lineRange string) (req *Request, err error) {
- req = &Request{
+// NewExecRequest create and initialize stdout and stderr to os.Stdout and
+// os.Stderr.
+func NewExecRequest(mode, script, lineRange string) (req *ExecRequest, err error) {
+ req = &ExecRequest{
Mode: mode,
Script: script,
LineRange: lineRange,
@@ -63,7 +63,7 @@ func NewRequest(mode, script, lineRange string) (req *Request, err error) {
}
// close flush and release all resources.
-func (req *Request) close() {
+func (req *ExecRequest) close() {
req.mlog.Flush()
var err = req.flog.Sync()
@@ -78,7 +78,7 @@ func (req *Request) close() {
}
// init initialize multi loggers to write all output.
-func (req *Request) init() (err error) {
+func (req *ExecRequest) init() (err error) {
if req.mlog == nil {
var (
namedStdout = mlog.NewNamedWriter(`stdout`, os.Stdout)
@@ -112,7 +112,7 @@ func (req *Request) init() (err error) {
}
// registerLogWriter register a writer w to mlog output and error.
-func (req *Request) registerLogWriter(name string, w io.Writer) {
+func (req *ExecRequest) registerLogWriter(name string, w io.Writer) {
var namedw = mlog.NewNamedWriter(name, w)
req.mlog.RegisterErrorWriter(namedw)
req.mlog.RegisterOutputWriter(namedw)
diff --git a/http_response.go b/http_response.go
index c983dce..c4f5988 100644
--- a/http_response.go
+++ b/http_response.go
@@ -5,7 +5,7 @@ package awwan
// HttpResponse contains the output of command execution.
type HttpResponse struct {
- *Request
+ *ExecRequest
Error string `json:"error"`
Output []byte `json:"output"`
}
diff --git a/http_server.go b/http_server.go
index 30dd52a..391110c 100644
--- a/http_server.go
+++ b/http_server.go
@@ -590,7 +590,7 @@ func (httpd *httpServer) awwanApiFsPut(epr *libhttp.EndpointRequest) (rawBody []
func (httpd *httpServer) awwanApiExecute(epr *libhttp.EndpointRequest) (resb []byte, err error) {
var (
logp = "awwanApiExecute"
- req = &Request{}
+ req = &ExecRequest{}
res = &libhttp.EndpointResponse{}
)
@@ -613,7 +613,7 @@ func (httpd *httpServer) awwanApiExecute(epr *libhttp.EndpointRequest) (resb []b
var (
data = &HttpResponse{
- Request: req,
+ ExecRequest: req,
}
logw bytes.Buffer
diff --git a/session.go b/session.go
index c0e5625..4bca064 100644
--- a/session.go
+++ b/session.go
@@ -236,7 +236,7 @@ func (ses *Session) Put(stmt *Statement) (err error) {
}
// SudoCopy copy file in local system using sudo.
-func (ses *Session) SudoCopy(req *Request, stmt *Statement) (err error) {
+func (ses *Session) SudoCopy(req *ExecRequest, stmt *Statement) (err error) {
var (
logp = `SudoCopy`
src = stmt.args[0]
@@ -307,7 +307,7 @@ func (ses *Session) SudoCopy(req *Request, stmt *Statement) (err error) {
// SudoGet copy file from remote that can be accessed by root on remote, to
// local.
// If the owner and mode is set, it will also changes using sudo.
-func (ses *Session) SudoGet(req *Request, stmt *Statement) (err error) {
+func (ses *Session) SudoGet(req *ExecRequest, stmt *Statement) (err error) {
var (
logp = `SudoGet`
src = stmt.args[0]
@@ -336,7 +336,7 @@ func (ses *Session) SudoGet(req *Request, stmt *Statement) (err error) {
}
// SudoPut copy file from local to remote using sudo.
-func (ses *Session) SudoPut(req *Request, stmt *Statement) (err error) {
+func (ses *Session) SudoPut(req *ExecRequest, stmt *Statement) (err error) {
var (
logp = `SudoPut`
src = stmt.args[0]
@@ -385,7 +385,7 @@ func (ses *Session) SudoPut(req *Request, stmt *Statement) (err error) {
//
// The raw field must be used when generating Command to handle arguments
// with quotes.
-func ExecLocal(req *Request, stmt *Statement) (err error) {
+func ExecLocal(req *ExecRequest, stmt *Statement) (err error) {
if stmt.cmd == `sudo` {
if req.stdin != nil {
var raw = make([]byte, 0, len(stmt.raw))
@@ -410,7 +410,7 @@ func ExecLocal(req *Request, stmt *Statement) (err error) {
// executeRequires run the "#require:" statements from line 0 until
// the start argument in the local system.
-func (ses *Session) executeRequires(req *Request, pos linePosition) (err error) {
+func (ses *Session) executeRequires(req *ExecRequest, pos linePosition) (err error) {
var (
stmt *Statement
x int64
@@ -432,7 +432,7 @@ func (ses *Session) executeRequires(req *Request, pos linePosition) (err error)
return nil
}
-func (ses *Session) executeScriptOnLocal(req *Request, pos linePosition) (err error) {
+func (ses *Session) executeScriptOnLocal(req *ExecRequest, pos linePosition) (err error) {
var max = int64(len(req.script.stmts))
if pos.start > max {
return
@@ -478,7 +478,7 @@ func (ses *Session) executeScriptOnLocal(req *Request, pos linePosition) (err er
return nil
}
-func (ses *Session) executeScriptOnRemote(req *Request, pos linePosition) (err error) {
+func (ses *Session) executeScriptOnRemote(req *ExecRequest, pos linePosition) (err error) {
var max = int64(len(req.script.stmts))
if pos.start > max {
return
@@ -610,7 +610,7 @@ func (ses *Session) generatePaths() (err error) {
return nil
}
-func (ses *Session) initSSHClient(req *Request, sshSection *config.Section) (err error) {
+func (ses *Session) initSSHClient(req *ExecRequest, sshSection *config.Section) (err error) {
var (
logp = "initSSHClient"
lastIdentFile string
@@ -752,7 +752,7 @@ func (ses *Session) loadRawEnv(content []byte) (err error) {
// localSudoChmod change the file permission in local environment using
// sudo.
-func (ses *Session) localSudoChmod(req *Request, file string, mode fs.FileMode) (err error) {
+func (ses *Session) localSudoChmod(req *ExecRequest, file string, mode fs.FileMode) (err error) {
var (
fsmode = strconv.FormatUint(uint64(mode), 8)
sudoChmod = &Statement{
@@ -770,7 +770,7 @@ func (ses *Session) localSudoChmod(req *Request, file string, mode fs.FileMode)
}
// localSudoChown change the file owner in local environment using sudo.
-func (ses *Session) localSudoChown(req *Request, file, owner string) (err error) {
+func (ses *Session) localSudoChown(req *ExecRequest, file, owner string) (err error) {
var sudoChown = &Statement{
kind: statementKindDefault,
cmd: `sudo`,
diff --git a/ssh_client.go b/ssh_client.go
index 1d20ae8..519a19c 100644
--- a/ssh_client.go
+++ b/ssh_client.go
@@ -34,7 +34,7 @@ type sshClient struct {
//
// Once connection established, the client create new temporary directory on
// server at dirTmp for sudoGet or sudoPut operations.
-func newSshClient(req *Request, section *config.Section, dirTmp string) (sshc *sshClient, err error) {
+func newSshClient(req *ExecRequest, section *config.Section, dirTmp string) (sshc *sshClient, err error) {
var logp = `newSshClient`
req.mlog.Outf(`--- SSH connection: %s@%s:%s`,
diff --git a/sudo_test.go b/sudo_test.go
index dc3c359..b8700ff 100644
--- a/sudo_test.go
+++ b/sudo_test.go
@@ -24,7 +24,7 @@ func TestExecLocal_sudo(t *testing.T) {
var (
mockin = &mockStdin{}
mockout = &bytes.Buffer{}
- req = &Request{
+ req = &ExecRequest{
stdin: mockin,
}
err error