From: Jose Lamego <jose.a.lamego@linux.intel.com>
To: yocto@yoctoproject.org
Cc: timothy.t.orling@intel.com
Subject: Re: [PATCH 1/3][eclipse-poky][mars] systemtap: Add button to browse to build folder.
Date: Wed, 16 Mar 2016 11:51:50 -0600 [thread overview]
Message-ID: <56E99D36.6040808@linux.intel.com> (raw)
In-Reply-To: <1457565752-20659-1-git-send-email-jose.a.lamego@linux.intel.com>
[-- Attachment #1.1: Type: text/plain, Size: 11334 bytes --]
Ping
On 03/09/2016 05:22 PM, Jose Lamego wrote:
> From: Adrian Dudau <adrian.dudau@enea.com>
>
> Fixes [Yocto 4423]
> Porting commit a80114b5d1c8d774fd9271da48a38654321d4817 from
> the Juno branch.
>
> Signed-off-by: Jose Lamego <jose.a.lamego@linux.intel.com>
> ---
> .../src/org/yocto/remote/utils/ShellSession.java | 6 +++--
> .../src/org/yocto/sdk/remotetools/Messages.java | 1 +
> .../sdk/remotetools/actions/SystemtapHandler.java | 3 ++-
> .../sdk/remotetools/actions/SystemtapModel.java | 5 ++--
> .../actions/SystemtapSettingDialog.java | 28 ++++++++++++++++++++++
> .../org/yocto/sdk/remotetools/messages.properties | 3 ++-
> 6 files changed, 40 insertions(+), 6 deletions(-)
>
> diff --git a/plugins/org.yocto.remote.utils/src/org/yocto/remote/utils/ShellSession.java b/plugins/org.yocto.remote.utils/src/org/yocto/remote/utils/ShellSession.java
> index 4ac8001..2a4dbf5 100644
> --- a/plugins/org.yocto.remote.utils/src/org/yocto/remote/utils/ShellSession.java
> +++ b/plugins/org.yocto.remote.utils/src/org/yocto/remote/utils/ShellSession.java
> @@ -46,6 +46,7 @@ public class ShellSession {
> private String shellPath = null;
> private final String initCmd;
> private final File root;
> + private final File builddir;
>
> private OutputStreamWriter out;
>
> @@ -68,8 +69,9 @@ public class ShellSession {
> return sb.toString();
> }
>
> - public ShellSession(int shellType, File root, String initCmd, OutputStream out) throws IOException {
> + public ShellSession(int shellType, File root, File builddir, String initCmd, OutputStream out) throws IOException {
> this.root = root;
> + this.builddir = builddir;
> this.initCmd = initCmd;
> if (out == null) {
> this.out = new OutputStreamWriter(null);
> @@ -93,7 +95,7 @@ public class ShellSession {
> }
>
> if (initCmd != null) {
> - execute("source " + initCmd);
> + execute("source " + initCmd + " " + builddir.getAbsolutePath());
> }
> }
>
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/Messages.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/Messages.java
> index 093118d..16f5dc8 100644
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/Messages.java
> +++ b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/Messages.java
> @@ -40,6 +40,7 @@ public class Messages extends NLS {
> public static String TerminalViewer_text;
> //public static String Systemtap_KO_Text;
> public static String Metadata_Location;
> + public static String Builddir_Location;
> public static String User_ID;
> public static String Remote_User_ID;
> public static String Remote_Host;
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapHandler.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapHandler.java
> index 79048aa..86c963f 100644
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapHandler.java
> +++ b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapHandler.java
> @@ -53,6 +53,7 @@ public class SystemtapHandler extends AbstractHandler {
> if(setting.open() == BaseSettingDialog.OK) {
>
> String metadata_location = ((SystemtapSettingDialog)setting).getMetadataLocation();
> + String builddir_location = ((SystemtapSettingDialog)setting).getBuilddirLocation();
> String remote_host = ((SystemtapSettingDialog)setting).getRemoteHost();
> String user_id = ((SystemtapSettingDialog)setting).getUserID();
> String systemtap_script = ((SystemtapSettingDialog)setting).getSystemtapScript();
> @@ -66,7 +67,7 @@ public class SystemtapHandler extends AbstractHandler {
> if (terminalSubSystem != null) {
> TerminalsUI terminalsUI = TerminalsUI.getInstance();
> TerminalViewer terminalViewer = terminalsUI.activateTerminalsView();
> - SystemtapModel op = new SystemtapModel(metadata_location,remote_host, user_id, systemtap_script,
> + SystemtapModel op = new SystemtapModel(metadata_location,builddir_location,remote_host, user_id, systemtap_script,
> systemtap_args,window.getShell().getDisplay());
> try {
> op.setHost(host);
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapModel.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapModel.java
> index c769574..2a76bbd 100644
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapModel.java
> +++ b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapModel.java
> @@ -37,6 +37,7 @@ public class SystemtapModel extends BaseModel {
>
> protected MessageConsole sessionConsole;
> private String metadata_location;
> + private String builddir_location;
> private String remote_host;
> private String user_id;
> private String systemtap_script;
> @@ -44,7 +45,7 @@ public class SystemtapModel extends BaseModel {
>
> Display display;
>
> - public SystemtapModel(String metadata_location, String remote_host, String user_id, String systemtap_script, String systemtap_args, Display display) {
> + public SystemtapModel(String metadata_location, String builddir_location, String remote_host, String user_id, String systemtap_script, String systemtap_args, Display display) {
> super(null, TASK_NAME, "", "");
> this.metadata_location = metadata_location;
> this.remote_host = remote_host;
> @@ -89,7 +90,7 @@ public class SystemtapModel extends BaseModel {
> throws InvocationTargetException, InterruptedException {
> try {
> ShellSession shell = new ShellSession(ShellSession.SHELL_TYPE_BASH,
> - new File(this.metadata_location),
> + new File(this.metadata_location), new File(this.builddir_location),
> DEFAULT_INIT_SCRIPT, sessionConsole.newOutputStream());
> boolean acceptedKey = shell.ensureKnownHostKey(user_id, remote_host);
> if (acceptedKey) {
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapSettingDialog.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapSettingDialog.java
> index 2b90727..5c14c9a 100644
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapSettingDialog.java
> +++ b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/SystemtapSettingDialog.java
> @@ -37,18 +37,21 @@ public class SystemtapSettingDialog extends Dialog {
> static protected String TITLE="Systemtap Crosstap";
> protected String title;
> protected String metadata_location;
> + protected String builddir_location;
> protected String systemtap_script;
> protected String user_id;
> protected String remote_host;
> protected String systemtap_args;
> protected boolean okPressed;
> protected Button metadataLocationBtn;
> + protected Button builddirLocationBtn;
> protected Button systemtapScriptBtn;
> protected Text userIDText;
> protected Text remoteHostText;
> protected Text systemtapArgsText;
> protected Text systemtapScriptText;
> protected Text metadataLocationText;
> + protected Text builddirLocationText;
>
> protected SystemtapSettingDialog(Shell parentShell, String title) {
> super(parentShell);
> @@ -74,6 +77,10 @@ public class SystemtapSettingDialog extends Dialog {
> public String getMetadataLocation() {
> return metadata_location;
> }
> +
> + public String getBuilddirLocation() {
> + return builddir_location;
> + }
>
> public String getRemoteHost() {
> return remote_host;
> @@ -119,6 +126,14 @@ public class SystemtapSettingDialog extends Dialog {
> metadataLocationBtn = addDirSelectButton(textContainer, metadataLocationText);
>
> label = new Label(projComp, SWT.NONE);
> + label.setText(Messages.Builddir_Location);
> + textContainer = new Composite(projComp, SWT.NONE);
> + textContainer.setLayout(new GridLayout(2, false));
> + textContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
> + builddirLocationText = (Text)addTextControl(textContainer, builddir_location);
> + builddirLocationBtn = addDirSelectButton(textContainer, builddirLocationText);
> +
> + label = new Label(projComp, SWT.NONE);
> label.setText(Messages.Remote_User_ID);
> userIDText = new Text(projComp, SWT.SINGLE | SWT.BORDER);
>
> @@ -219,6 +234,19 @@ public class SystemtapSettingDialog extends Dialog {
> CommonHelper.showErrorDialog("SystemTap Error", null, "The specified metadata location is not a directory!");
> return;
> }
> + builddir_location = builddirLocationText.getText();
> + if ( (builddir_location == null) || builddir_location.isEmpty()) {
> + CommonHelper.showErrorDialog("SystemTap Error", null, "Please specify your builddir location!");
> + return;
> + }
> + File builddir_dir = new File(builddir_location);
> + if (!builddir_dir.exists()) {
> + CommonHelper.showErrorDialog("SystemTap Error", null, "The specified builddir location does not exist!");
> + }
> + if (!metadata_dir.isDirectory()) {
> + CommonHelper.showErrorDialog("SystemTap Error", null, "The specified builddir location is not a directory!");
> + return;
> + }
> user_id = userIDText.getText();
> if ( (user_id == null) || user_id.isEmpty()) {
> CommonHelper.showErrorDialog("SystemTap Error", null, "Please specify remote user id!");
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/messages.properties b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/messages.properties
> index bc065b9..173897a 100644
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/messages.properties
> +++ b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/messages.properties
> @@ -35,6 +35,7 @@ Powertop_ShowPid_Text=show pids in wakeups list
> TerminalViewer_text=This view is dedicated to Yocto Remote tools. Please use the "Yocto Remote Tools" menu to open the view.
> //Systemtap_KO_Text=Kernel Module:
> Metadata_Location=Metadata Location:
> +Builddir_Location=Build dir Location:
> User_ID=User ID:
> Remote_User_ID=Remote User ID:
> Remote_Host=Remote Host:
> @@ -46,4 +47,4 @@ LocalJob_Title=Launching local application
> ErrorLocalJob=Failed in launching local application
>
> RemoteShellExec_1=Executing {0} {1}
> -RemoteShellExec_2=Could not create the hostShellProcess.\n
> \ No newline at end of file
> +RemoteShellExec_2=Could not create the hostShellProcess.\n
>
--
Jose Lamego | OTC Embedded Platforms & Tools | GDC
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 501 bytes --]
prev parent reply other threads:[~2016-03-16 17:52 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-09 23:22 [PATCH 1/3][eclipse-poky][mars] systemtap: Add button to browse to build folder Jose Lamego
2016-03-16 17:51 ` Jose Lamego [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56E99D36.6040808@linux.intel.com \
--to=jose.a.lamego@linux.intel.com \
--cc=timothy.t.orling@intel.com \
--cc=yocto@yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.