summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastien Douheret <sebastien.douheret@iot.bzh>2018-10-17 16:41:58 +0200
committerSebastien Douheret <sebastien.douheret@iot.bzh>2018-10-17 16:43:04 +0200
commit4695ce02620407a5074125eaa5b257dd0e73758a (patch)
treedb5e3b1eadc856f59c930cc8967878da059739c8
parentc2558601c7ce2b7fd7eaf7c2336fb78242781e50 (diff)
Rework last changes about LD_LIBRARY_PATH issue
Last fix that just add unset LD_LIBRARY_PATH in xds-project.conf file was not good enough. Fix problem in xds-server (see https://gerrit.automotivelinux.org/gerrit/#/c/17253/) and this commit just add propagation of new LdLibPathNoReset field in xds-agent. Change-Id: I8312e7d37a54ea6532b8988ca1c825b5d7d51c5d Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
-rw-r--r--.vscode/settings.json19
-rw-r--r--lib/agent/apiv1-exec.go23
-rw-r--r--lib/agent/projects.go2
-rw-r--r--lib/xaapiv1/exec.go23
4 files changed, 32 insertions, 35 deletions
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 075120d..1eb0fa5 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,16 +1,13 @@
// Place your settings in this file to overwrite default and user settings.
{
- // Specify GOPATH here to override the one that is set as environment variable. The inferred GOPATH from workspace root overrides this, if go.inferGopath is set to true.
- "go.gopath": "${workspaceRoot}/../../../../../..",
-
- // The number of spaces a tab is equal to. This setting is overriden based on the file contents when `editor.detectIndentation` is on.
- "editor.tabSize": 4,
- // Insert spaces when pressing Tab. This setting is overriden based on the file contents when `editor.detectIndentation` is on.
- "editor.insertSpaces": true,
-
- // When opening a file, `editor.tabSize` and `editor.insertSpaces` will be detected based on the file contents.
+ // Specify GOPATH here to override the one that is set as environment variable. The inferred GOPATH from workspace root overrides this, if go.inferGopath is set to true.
+ "go.gopath": "${workspaceRoot}/../../../../../..",
+ // The number of spaces a tab is equal to. This setting is overriden based on the file contents when `editor.detectIndentation` is on.
+ "editor.tabSize": 4,
+ // Insert spaces when pressing Tab. This setting is overriden based on the file contents when `editor.detectIndentation` is on.
+ "editor.insertSpaces": true,
+ // When opening a file, `editor.tabSize` and `editor.insertSpaces` will be detected based on the file contents.
"editor.detectIndentation": true,
-
// .jsbeautifyrc not at root directory but under webapp/
"beautify.config": "webapp/.jsbeautifyrc",
// Configure glob patterns for excluding files and folders.
@@ -23,7 +20,7 @@
"bin": true,
"tools": true,
"webapp*/dist": true,
- "webapp*/node_modules": true
+ "**/node_modules": true,
},
// Specify paths/files to ignore. (Supports Globs)
"cSpell.ignorePaths": [
diff --git a/lib/agent/apiv1-exec.go b/lib/agent/apiv1-exec.go
index 4a1340b..d742693 100644
--- a/lib/agent/apiv1-exec.go
+++ b/lib/agent/apiv1-exec.go
@@ -181,17 +181,18 @@ func (s *APIService) execCmd(c *gin.Context) {
// Forward back command to right server
res := xsapiv1.ExecResult{}
xsArgs := &xsapiv1.ExecArgs{
- ID: args.ID,
- SdkID: args.SdkID,
- CmdID: args.CmdID,
- Cmd: args.Cmd,
- Args: args.Args,
- Env: args.Env,
- RPath: args.RPath,
- TTY: args.TTY,
- TTYGdbserverFix: args.TTYGdbserverFix,
- ExitImmediate: args.ExitImmediate,
- CmdTimeout: args.CmdTimeout,
+ ID: args.ID,
+ SdkID: args.SdkID,
+ CmdID: args.CmdID,
+ Cmd: args.Cmd,
+ Args: args.Args,
+ Env: args.Env,
+ RPath: args.RPath,
+ TTY: args.TTY,
+ TTYGdbserverFix: args.TTYGdbserverFix,
+ LdLibPathNoReset: args.LdLibPathNoReset,
+ ExitImmediate: args.ExitImmediate,
+ CmdTimeout: args.CmdTimeout,
}
if err := svr.CommandExec(xsArgs, &res); err != nil {
common.APIError(c, err.Error())
diff --git a/lib/agent/projects.go b/lib/agent/projects.go
index d5f809f..0bd5315 100644
--- a/lib/agent/projects.go
+++ b/lib/agent/projects.go
@@ -169,8 +169,6 @@ func (p *Projects) Add(newP xaapiv1.ProjectConfig, fromSid, requestURL string) (
} else {
fd.WriteString("#export XDS_SDK_ID=???\n")
}
- fd.WriteString("\n# Only disable reset of LD_LIBRARY_PATH if you are absolutely know what you are doing!\n")
- fd.WriteString("export LD_LIBRARY_PATH=''\n")
fd.Close()
}
diff --git a/lib/xaapiv1/exec.go b/lib/xaapiv1/exec.go
index 4b089e7..c6870d9 100644
--- a/lib/xaapiv1/exec.go
+++ b/lib/xaapiv1/exec.go
@@ -20,17 +20,18 @@ package xaapiv1
type (
// ExecArgs JSON parameters of /exec command
ExecArgs struct {
- ID string `json:"id" binding:"required"`
- SdkID string `json:"sdkID"` // sdk ID to use for setting env
- CmdID string `json:"cmdID"` // command unique ID
- Cmd string `json:"cmd" binding:"required"`
- Args []string `json:"args"`
- Env []string `json:"env"`
- RPath string `json:"rpath"` // relative path into project
- TTY bool `json:"tty"` // Use a tty, specific to gdb --tty option
- TTYGdbserverFix bool `json:"ttyGdbserverFix"` // Set to true to activate gdbserver workaround about inferior output
- ExitImmediate bool `json:"exitImmediate"` // when true, exit event sent immediately when command exited (IOW, don't wait file synchronization)
- CmdTimeout int `json:"timeout"` // command completion timeout in Second
+ ID string `json:"id" binding:"required"`
+ SdkID string `json:"sdkID"` // sdk ID to use for setting env
+ CmdID string `json:"cmdID"` // command unique ID
+ Cmd string `json:"cmd" binding:"required"`
+ Args []string `json:"args"`
+ Env []string `json:"env"`
+ RPath string `json:"rpath"` // relative path into project
+ TTY bool `json:"tty"` // Use a tty, specific to gdb --tty option
+ TTYGdbserverFix bool `json:"ttyGdbserverFix"` // Set to true to activate gdbserver workaround about inferior output
+ LdLibPathNoReset bool `json:"ldLibPathNoReset"` // Set to true to not reset LD_LIBRARY_PATH when sourcing environment file
+ ExitImmediate bool `json:"exitImmediate"` // when true, exit event sent immediately when command exited (IOW, don't wait file synchronization)
+ CmdTimeout int `json:"timeout"` // command completion timeout in Second
}
// ExecResult JSON result of /exec command