Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't change 27753 port for 'iOSDeviceManager' / DeviceAgent-Runner.app #541

Open
Goginenni opened this issue Sep 22, 2016 · 21 comments
Open

Comments

@Goginenni
Copy link

Goginenni commented Sep 22, 2016

Hi,
I tried according to this post #540 but doesn't work for me.

DEVICE_AGENT_URL=http://127.0.0.1:8086 ./run_loop/2.2.0/lib/run_loop/device_agent/bin/iOSDeviceManager start_test --device-id 026B9D52-492B-4FB1-B8C6-B48B83A27E06

$ curl -X GET '-H "Content-Type: application/json"' http://127.0.0.1:8086/1.0/health
curl: (7) Failed to connect to 127.0.0.1 port 8086: Connection refused

But

$ curl -X GET '-H "Content-Type: application/json"' http://127.0.0.1:27753/1.0/health
{"status":"Calabash is ready and waiting."}

How can i change this port?

Regards,
Sathish

@jmoody
Copy link
Member

jmoody commented Sep 30, 2016

@jmoody jmoody closed this as completed Sep 30, 2016
@Goginenni
Copy link
Author

@jmoody Are you sure?. For me, Overriding this port only changes URL for Device agent client to connect. But it is not changing the actual port in the DeviceAgent-Runner.app.

@jmoody
Copy link
Member

jmoody commented Sep 30, 2016

That is correct. My mistake. There is no way to change this port number on the DeviceAgent itself.

@Goginenni
Copy link
Author

@jmoody Is it apple limitation ? or it a hardwired value that could in principle be changed.

@jmoody
Copy link
Member

jmoody commented Sep 30, 2016

It could be changed but there is no mechanism for doing so. What is your use case?

@Goginenni
Copy link
Author

I want to run the tests parallel in iOS simulators and this issue is blocking us.

@jmoody jmoody reopened this Oct 4, 2016
@Goginenni
Copy link
Author

@jmoody Thanks.

@jmoody
Copy link
Member

jmoody commented Oct 4, 2016

@Goginenni This is not on the critical path at the moment. I have reopened this issue and put it into the backlog.

@Goginenni
Copy link
Author

@jmoody Ok. it is quite critical to us and I would like to dig into it & fix. Can i see iOSDeviceManager code or it is impossible to share this code ?

@MortenGregersen
Copy link
Contributor

+1
This is also critical for us. We really need to be able to run on multiple simulators at once, to get our test executed in a minimum amount of time.

@maxelrod
Copy link

maxelrod commented Apr 5, 2017

+1 This too is something we would like.

@astapinski
Copy link

+1 did anything ever come of this? I'd really like to be able to run on multiple simulators.

@RadiusGarrett
Copy link

@jmoody
+1 my company runs hundreds of calabash tests and we wish to gate quality at the PR level to prevent regression, but without launching multiple simulators turnaround time is too long with the number of tests needed to run.

What can the public do to help prioritize this feature?

@jmoody
Copy link
Member

jmoody commented Aug 2, 2017

Sadly, the public can do nothing until DeviceAgent.iOS open sourced.

If you are Xamarin Test Cloud or Microsoft Mobile Center customers, you can request this feature from your representative.

To temper your expectations, this feature is an extremely low priority for Microsoft.

@RadiusGarrett
Copy link

Understood and thank you for the prompt reply.

@jmoody
Copy link
Member

jmoody commented Aug 3, 2017

I have been thinking about running multiple simulators concurrently. I don't think this is something we can easily support. The port issue is somewhat trivial - I can think of a solution. The real problem is managing the underlying xcodebuild test-without-building processes. There are several scenarios where an existing xcodebuild process will reopen the Simulator after a test is terminated. This causes the next test to fail. My solution is to enforce a "one xcodebuild process targeting a Simulator" rule.

We switched to xcodebuild test-without-building because the FBSimulatorControl start-test reverse engineering solution stopped working in Xcode 8.3.3. We followed their lead and switched to calling xcodebuild. The community could investigate whether or not the previous FBSimulatorControl start-test solution can be revived.

We could also try transitioning to using FBSimulatorControl's fbsimctl to manage the simulators - I don't know if that tool also has this relaunch problem.

@RadiusGarrett
Copy link

@jmoody

Will the ability to launch multiple concurrent simulators in Xcode 9 help at all?

https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/WhatsNewXcode/xcode_9/xcode_9.html

"Simulator

  • New in Xcode 9 - Multiple concurrent simulators.
  • Run multiple simulators at the same time.
  • Run more tests in parallel.
  • Test synching and other multi-device workflows."

@jmoody
Copy link
Member

jmoody commented Aug 7, 2017

Will the ability to launch multiple concurrent simulators in Xcode 9 help at all?

No. This is not related to the unchangeable port issue.

@blamay
Copy link

blamay commented Jan 18, 2018

@jmoody

Do you see any reason why a sed/perl command to change the ports wouldn't work?

Something like this https://stackoverflow.com/questions/15402770/how-to-grep-and-replace

@jmoody
Copy link
Member

jmoody commented Jan 19, 2018

I will repeat:

Sadly, the public can do nothing until DeviceAgent.iOS open sourced.

If you are Xamarin Test Cloud or Microsoft Mobile Center customers, you can request this feature from your representative.

To temper your expectations, this feature is an extremely low priority for Microsoft.

The port number is compiled into the DeviceAgent.app.

@blamay
Copy link

blamay commented Jan 19, 2018

The port number is compiled into the DeviceAgent.app

This answers my question. I wanted to be sure before investing in additional mac machines. Thank you for the reply.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants