[JBoss JIRA] (JBIDE-23039) Need an interactive terminal that fits specific requirements
by Rob Stryker (JIRA)
[ https://issues.jboss.org/browse/JBIDE-23039?page=com.atlassian.jira.plugi... ]
Rob Stryker commented on JBIDE-23039:
-------------------------------------
I tried changing it to PTY.Mode.CONSOLE instead of PTY.Mode.TERMINAL but it just errored (no seg-fault, just normal IOException), and javadoc indicates the PTY.Mode.Console mode is not available on windows.
However it also lists only linux_x86, linux_x86_64, solaris, and macosx as supported for PTY.Mode.TERMINAL..... ... so kinda mixed messages ;) It's basically saying it "might" work on windows.
As far as I can tell, my dev-env is segfaulting bc the native stuff isn't working correctly, probably because it's not a proper installation (but who knows for sure).
So, summary:
1) This bug (right now) needs to fix linux and mac primarily. Things "mostly work" on windows...
2) I still think it's a good idea to test this newest PR on windows anyway bc there's a chance it works and even if it doesn't fix the problem but at least doesn't crash, then it keeps the UI unified.
So let's try to get this tested on mac and windows tomorrow (today?).
https://github.com/jbosstools/jbosstools-openshift/pull/1312
- Rob
> Need an interactive terminal that fits specific requirements
> ------------------------------------------------------------
>
> Key: JBIDE-23039
> URL: https://issues.jboss.org/browse/JBIDE-23039
> Project: Tools (JBoss Tools)
> Issue Type: Feature Request
> Components: server
> Affects Versions: 4.4.1.AM2
> Reporter: Rob Stryker
> Assignee: Rob Stryker
> Fix For: 4.4.2.AM1
>
> Attachments: vagranttty.png
>
>
> CDK Tools requires a terminal that allows interactivity of i/o. The full set of requirements is a bit difficult to find a solution for.
> 1) I must be able to get a Process or IProcess object when a command is run
> 2) I must be able to get an event or know when the process terminates
> 3) The terminal or console must be interactive and allow user input when prompted.
> 4) It must behave as in 3) for 'vagrant' commands and any and all associated plugins.
> These three requirements thus far seem impossible to solve. Solutions that have been attempted are:
> 1) Creating a java Process by myself via Runtime.exec. The interactive prompts never arrive and there is no API for Process to know when it is waiting for input.
> 2) Using the external-tools launch configuration. When running a command like mvn, the console that pops up seems to allow input from the user, and functions as expected. However, when running a command such as vagrant, such prompts are not provided. In our usecase, the following behavior is observed:
> a) During vagrant-registration prompts, the console indicates it is not a TTY terminal and cannot allow input
> b) During a landrush prompt for superuser status, no prompt is made, no TTY message is listed, and the process appears to have frozen
> 3) Launching / Opening a tm.terminal view. This solution fails requirements 1 and 2. We are not able to get a Process or an IProcess when a command is launched in a proper interactive terminal. This means we can have no way to know when the process has completed.
> Other options have been explored but ended up at dead ends and not worth mentioning. The real question is why interactive behavior is visible when using external-tools launch config for maven, but is not visible when running vagrant.
> Is this a function of the way the vagrant commands display or prompt for input? Why does vagrant-registration require a TTY terminal, but maven does not? Is this something that can be fixed upstream?
> No other obvious solutions have presented themselves in the past year.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 6 months
[JBoss JIRA] (JBIDE-23039) Need an interactive terminal that fits specific requirements
by Rob Stryker (JIRA)
[ https://issues.jboss.org/browse/JBIDE-23039?page=com.atlassian.jira.plugi... ]
Rob Stryker commented on JBIDE-23039:
-------------------------------------
Ok, a few new notes :D
I looked into the cdt.native issue again, and it works for linux. I suspect it will work for mac, and I have reason to believe it will work on windows (but failed for me).
The PR is here: https://github.com/jbosstools/jbosstools-openshift/pull/1312
The PR reverts the revert I made a few hours ago, and also modifies about 5 lines to use an API in cdt.native.
I suspect the reason it failed for me on windows is that I'm doing it in a dev-env. It would be very useful if someone could test this in a proper installation rather than runtime-workbench. I've attached the windows stack (bc runtime workbench crashes). Again, it could just be a small error in my dev-env. I know cdt put effort in to making this API work on windows so there's no real reason I can imagine that it wouldn't work there. I'll test another small change or two but other than that I'd like to see what QE can come up with.
https://paste.fedoraproject.org/428234/73917751/
> Need an interactive terminal that fits specific requirements
> ------------------------------------------------------------
>
> Key: JBIDE-23039
> URL: https://issues.jboss.org/browse/JBIDE-23039
> Project: Tools (JBoss Tools)
> Issue Type: Feature Request
> Components: server
> Affects Versions: 4.4.1.AM2
> Reporter: Rob Stryker
> Assignee: Rob Stryker
> Fix For: 4.4.2.AM1
>
> Attachments: vagranttty.png
>
>
> CDK Tools requires a terminal that allows interactivity of i/o. The full set of requirements is a bit difficult to find a solution for.
> 1) I must be able to get a Process or IProcess object when a command is run
> 2) I must be able to get an event or know when the process terminates
> 3) The terminal or console must be interactive and allow user input when prompted.
> 4) It must behave as in 3) for 'vagrant' commands and any and all associated plugins.
> These three requirements thus far seem impossible to solve. Solutions that have been attempted are:
> 1) Creating a java Process by myself via Runtime.exec. The interactive prompts never arrive and there is no API for Process to know when it is waiting for input.
> 2) Using the external-tools launch configuration. When running a command like mvn, the console that pops up seems to allow input from the user, and functions as expected. However, when running a command such as vagrant, such prompts are not provided. In our usecase, the following behavior is observed:
> a) During vagrant-registration prompts, the console indicates it is not a TTY terminal and cannot allow input
> b) During a landrush prompt for superuser status, no prompt is made, no TTY message is listed, and the process appears to have frozen
> 3) Launching / Opening a tm.terminal view. This solution fails requirements 1 and 2. We are not able to get a Process or an IProcess when a command is launched in a proper interactive terminal. This means we can have no way to know when the process has completed.
> Other options have been explored but ended up at dead ends and not worth mentioning. The real question is why interactive behavior is visible when using external-tools launch config for maven, but is not visible when running vagrant.
> Is this a function of the way the vagrant commands display or prompt for input? Why does vagrant-registration require a TTY terminal, but maven does not? Is this something that can be fixed upstream?
> No other obvious solutions have presented themselves in the past year.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 6 months
[JBoss JIRA] (JBIDE-23170) Red Hat Central page auto-resizing gets broken after editing options
by Denis Golovin (JIRA)
Denis Golovin created JBIDE-23170:
-------------------------------------
Summary: Red Hat Central page auto-resizing gets broken after editing options
Key: JBIDE-23170
URL: https://issues.jboss.org/browse/JBIDE-23170
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: central
Affects Versions: 4.4.1.Final
Environment: Windows 10 Home
Reporter: Denis Golovin
Priority: Minor
Attachments: 2016 09 14 2223 34.mp4
I noticed sometimes Red Hat Central stops resizing to editor part size and shows horizontal scrollbar. It happens when options button is clicked when editor part with central is maximized (see attached video).
!2016 09 14 2223 34.mp4!
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 6 months
[JBoss JIRA] (JBDS-3903) Platform Installer does not Setup Docker Env-Vars
by Denis Golovin (JIRA)
[ https://issues.jboss.org/browse/JBDS-3903?page=com.atlassian.jira.plugin.... ]
Denis Golovin commented on JBDS-3903:
-------------------------------------
[~mhusnain]We can mention in DevSuite installer doc, that it does not install Docker for Windows (Docker MAchine or Boot2Docker). If they plan to work with pure Docker they need to install Docker for Windows and make sure it running before using any Eclipse Docker related tools.
> Platform Installer does not Setup Docker Env-Vars
> -------------------------------------------------
>
> Key: JBDS-3903
> URL: https://issues.jboss.org/browse/JBDS-3903
> Project: Red Hat JBoss Developer Studio (devstudio)
> Issue Type: Feature Request
> Components: docker
> Affects Versions: 10.0.0.Alpha1
> Environment: Windows
> Reporter: Thomas Mäder
> Assignee: Xavier Coulon
>
> I have installed CDK, etc. from the "all in one" installer. Later, I tried to use Docker tooling. I opened the view "Docker Explorer". There was no connection shown. I tried to add a new one, but the system did not detect my default connection.
> Later, I ran "Docker Quickstart Terminal" from the start menu. Now the "New Connection" dialog in docker explorer picked up the default connection.
> As a user, I have no indication that I have to run the docker terminal in order to use the docker tooling in eclipse. If there are environment variables to be set up, the installer should do so. It is the reasonable expectation on Windows.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 6 months
[JBoss JIRA] (JBDS-3903) Platform Installer does not Setup Docker Env-Vars
by Misha Ali (JIRA)
[ https://issues.jboss.org/browse/JBDS-3903?page=com.atlassian.jira.plugin.... ]
Misha Ali commented on JBDS-3903:
---------------------------------
Hey [~dgolovin1], [~xcoulon], could someone respond to this please?
> Platform Installer does not Setup Docker Env-Vars
> -------------------------------------------------
>
> Key: JBDS-3903
> URL: https://issues.jboss.org/browse/JBDS-3903
> Project: Red Hat JBoss Developer Studio (devstudio)
> Issue Type: Feature Request
> Components: docker
> Affects Versions: 10.0.0.Alpha1
> Environment: Windows
> Reporter: Thomas Mäder
> Assignee: Xavier Coulon
>
> I have installed CDK, etc. from the "all in one" installer. Later, I tried to use Docker tooling. I opened the view "Docker Explorer". There was no connection shown. I tried to add a new one, but the system did not detect my default connection.
> Later, I ran "Docker Quickstart Terminal" from the start menu. Now the "New Connection" dialog in docker explorer picked up the default connection.
> As a user, I have no indication that I have to run the docker terminal in order to use the docker tooling in eclipse. If there are environment variables to be set up, the installer should do so. It is the reasonable expectation on Windows.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 6 months
[JBoss JIRA] (JBIDE-23039) Need an interactive terminal that fits specific requirements
by Rob Stryker (JIRA)
[ https://issues.jboss.org/browse/JBIDE-23039?page=com.atlassian.jira.plugi... ]
Rob Stryker commented on JBIDE-23039:
-------------------------------------
I've reverted the patch in master as well. Few things to note:
1) The '/usr/bin/script' hack does not work on mac. Their version of script does not accept passing a command without setting an output file, and it's different overall. Also if script is missing for some reason, it won't work. Altogether, this was a weird hack to begin with.
2) I spoke with Doug Schaefer to find out what else could be on offer to help solve this. He pointed to cdt's class "Spawner" and it's associated class "ProcessFactory". In short, these classes allow CDT to emulate a TTY (ie run a PTY) when launching the process. However, whether I used the generic console window or the terminal window, it would still error out with the same problem.
I'm sure CDT has solved this issue in the past, but this will require actually finding some CDT guys to talk to and see what the problem is and whether my suggested code was doing something wrong. There won't be a quick fix here unless we get really lucky.
3) Doug recommends we try to find out exactly where vagrant or the various vagrant plugins are demanding a TTY, and see if we can get them to use standard input instead. There's no real reason for most processes nowadays to require a TTY when all they are really looking for is the user to type stuff in via standard-in. This really should be investigated deeply, first bc it seems to be a strange and unnecessary requirement, but second because it's actively blocking our tools.
> Need an interactive terminal that fits specific requirements
> ------------------------------------------------------------
>
> Key: JBIDE-23039
> URL: https://issues.jboss.org/browse/JBIDE-23039
> Project: Tools (JBoss Tools)
> Issue Type: Feature Request
> Components: server
> Affects Versions: 4.4.1.AM2
> Reporter: Rob Stryker
> Assignee: Rob Stryker
> Fix For: 4.4.2.AM1
>
> Attachments: vagranttty.png
>
>
> CDK Tools requires a terminal that allows interactivity of i/o. The full set of requirements is a bit difficult to find a solution for.
> 1) I must be able to get a Process or IProcess object when a command is run
> 2) I must be able to get an event or know when the process terminates
> 3) The terminal or console must be interactive and allow user input when prompted.
> 4) It must behave as in 3) for 'vagrant' commands and any and all associated plugins.
> These three requirements thus far seem impossible to solve. Solutions that have been attempted are:
> 1) Creating a java Process by myself via Runtime.exec. The interactive prompts never arrive and there is no API for Process to know when it is waiting for input.
> 2) Using the external-tools launch configuration. When running a command like mvn, the console that pops up seems to allow input from the user, and functions as expected. However, when running a command such as vagrant, such prompts are not provided. In our usecase, the following behavior is observed:
> a) During vagrant-registration prompts, the console indicates it is not a TTY terminal and cannot allow input
> b) During a landrush prompt for superuser status, no prompt is made, no TTY message is listed, and the process appears to have frozen
> 3) Launching / Opening a tm.terminal view. This solution fails requirements 1 and 2. We are not able to get a Process or an IProcess when a command is launched in a proper interactive terminal. This means we can have no way to know when the process has completed.
> Other options have been explored but ended up at dead ends and not worth mentioning. The real question is why interactive behavior is visible when using external-tools launch config for maven, but is not visible when running vagrant.
> Is this a function of the way the vagrant commands display or prompt for input? Why does vagrant-registration require a TTY terminal, but maven does not? Is this something that can be fixed upstream?
> No other obvious solutions have presented themselves in the past year.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 6 months
[JBoss JIRA] (JBIDE-23169) JMX Navigator 'Connect...' on disconnected local process throws exception
by Denis Golovin (JIRA)
Denis Golovin created JBIDE-23169:
-------------------------------------
Summary: JMX Navigator 'Connect...' on disconnected local process throws exception
Key: JBIDE-23169
URL: https://issues.jboss.org/browse/JBIDE-23169
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: jmx
Affects Versions: 4.4.1.Final
Reporter: Denis Golovin
Attachments: connect.png
!connetc.png!
{code}java.lang.NullPointerException: Null JMXServiceURL
at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
at org.jboss.tools.jmx.jvmmonitor.internal.core.MBeanServer.connectToMBeanServer(MBeanServer.java:71)
at org.jboss.tools.jmx.jvmmonitor.internal.core.MBeanServer.createMBeanServerConnection(MBeanServer.java:86)
at org.jboss.tools.jmx.jvmmonitor.internal.core.AbstractMBeanServer.connect(AbstractMBeanServer.java:832)
at org.jboss.tools.jmx.jvmmonitor.internal.core.ActiveJvm.connect(ActiveJvm.java:238)
at org.jboss.tools.jmx.jvmmonitor.internal.core.ActiveJvm.connect(ActiveJvm.java:213)
at org.jboss.tools.jmx.local.internal.JvmConnectionWrapper.connect(JvmConnectionWrapper.java:121)
at org.jboss.tools.jmx.core.ConnectJob.run(ConnectJob.java:29)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55){code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 6 months
[JBoss JIRA] (JBIDE-23169) JMX Navigator 'Connect...' on disconnected local process throws exception
by Denis Golovin (JIRA)
[ https://issues.jboss.org/browse/JBIDE-23169?page=com.atlassian.jira.plugi... ]
Denis Golovin updated JBIDE-23169:
----------------------------------
Description:
!connect.png!
{code}java.lang.NullPointerException: Null JMXServiceURL
at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
at org.jboss.tools.jmx.jvmmonitor.internal.core.MBeanServer.connectToMBeanServer(MBeanServer.java:71)
at org.jboss.tools.jmx.jvmmonitor.internal.core.MBeanServer.createMBeanServerConnection(MBeanServer.java:86)
at org.jboss.tools.jmx.jvmmonitor.internal.core.AbstractMBeanServer.connect(AbstractMBeanServer.java:832)
at org.jboss.tools.jmx.jvmmonitor.internal.core.ActiveJvm.connect(ActiveJvm.java:238)
at org.jboss.tools.jmx.jvmmonitor.internal.core.ActiveJvm.connect(ActiveJvm.java:213)
at org.jboss.tools.jmx.local.internal.JvmConnectionWrapper.connect(JvmConnectionWrapper.java:121)
at org.jboss.tools.jmx.core.ConnectJob.run(ConnectJob.java:29)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55){code}
was:
!connetc.png!
{code}java.lang.NullPointerException: Null JMXServiceURL
at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
at org.jboss.tools.jmx.jvmmonitor.internal.core.MBeanServer.connectToMBeanServer(MBeanServer.java:71)
at org.jboss.tools.jmx.jvmmonitor.internal.core.MBeanServer.createMBeanServerConnection(MBeanServer.java:86)
at org.jboss.tools.jmx.jvmmonitor.internal.core.AbstractMBeanServer.connect(AbstractMBeanServer.java:832)
at org.jboss.tools.jmx.jvmmonitor.internal.core.ActiveJvm.connect(ActiveJvm.java:238)
at org.jboss.tools.jmx.jvmmonitor.internal.core.ActiveJvm.connect(ActiveJvm.java:213)
at org.jboss.tools.jmx.local.internal.JvmConnectionWrapper.connect(JvmConnectionWrapper.java:121)
at org.jboss.tools.jmx.core.ConnectJob.run(ConnectJob.java:29)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55){code}
> JMX Navigator 'Connect...' on disconnected local process throws exception
> -------------------------------------------------------------------------
>
> Key: JBIDE-23169
> URL: https://issues.jboss.org/browse/JBIDE-23169
> Project: Tools (JBoss Tools)
> Issue Type: Bug
> Components: jmx
> Affects Versions: 4.4.1.Final
> Reporter: Denis Golovin
> Attachments: connect.png
>
>
> !connect.png!
> {code}java.lang.NullPointerException: Null JMXServiceURL
> at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
> at javax.management.remote.JMXConnectorFactory.connect(Unknown Source)
> at org.jboss.tools.jmx.jvmmonitor.internal.core.MBeanServer.connectToMBeanServer(MBeanServer.java:71)
> at org.jboss.tools.jmx.jvmmonitor.internal.core.MBeanServer.createMBeanServerConnection(MBeanServer.java:86)
> at org.jboss.tools.jmx.jvmmonitor.internal.core.AbstractMBeanServer.connect(AbstractMBeanServer.java:832)
> at org.jboss.tools.jmx.jvmmonitor.internal.core.ActiveJvm.connect(ActiveJvm.java:238)
> at org.jboss.tools.jmx.jvmmonitor.internal.core.ActiveJvm.connect(ActiveJvm.java:213)
> at org.jboss.tools.jmx.local.internal.JvmConnectionWrapper.connect(JvmConnectionWrapper.java:121)
> at org.jboss.tools.jmx.core.ConnectJob.run(ConnectJob.java:29)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55){code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 6 months
[JBoss JIRA] (JBIDE-23168) Canceling Project Example download shows error dialog
by Denis Golovin (JIRA)
Denis Golovin created JBIDE-23168:
-------------------------------------
Summary: Canceling Project Example download shows error dialog
Key: JBIDE-23168
URL: https://issues.jboss.org/browse/JBIDE-23168
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: project-examples
Affects Versions: 4.4.1.GA
Environment: Windows 10 Home
Reporter: Denis Golovin
Priority: Minor
Attachments: examples-cancel-error.png
After project example download is started, cancel button should just close dialog and start download, but it shows error message about networking problems instead.
!examples-cancel-error.png!
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 6 months