TestProject Forum
Powered by leading experts in the test automation community

Improve Linux Agent installation support

  1. the self-unpacking shell script should be downloadable with wget, which is not possible due to a 403.
  2. the unstall process has some wrong file references in it (I installed to /opt/agent), which is obviously a missing version update:
    chmod: cannot access ‘/opt/agent/android-sdk/build-tools/26.0.1/aapt’: No such file or directory
    chmod: cannot access ‘/opt/agent/android-sdk/build-tools/26.0.1/zipalign’: No such file or directory
    chmod: cannot access ‘/opt/agent/drivers/chromedriver’: No such file or directory
    chmod: cannot access ‘/opt/agent/drivers/geckodriver’: No such file or directory
  3. the config.json properties file is not well documented. How can I configure a proxy here?
  4. to support dynamic scaling, a support for ephemeral agents would be welcome. Static IPs should not be necessary for agent registration.

found this one in the jar. Is this the valid format for the configuration file?
{
“bindIp” : “0.0.0.0”,
“bindPort”: 8585,
“bindSecurePort”: 8443,
“httpProxyEnabled” : false,
“httpsProxyHost”: null,
“httpsProxyPort”: 0,
“httpProxyUser”: null,
“httpProxyPassword” : null,
“socksProxyEnabled” : false,
“socksProxyHost” : null,
“socksProxyPort”: 0,
“socksProxyUser”: null,
“socksProxyPassword” : null
}

Hi @martin.jahr,

Thank you for taking the time to write to us your important feedback! We are taking the users’ feedback very seriously and in fact, a lot of our features came from users requests :slight_smile:

Regarding your feedback, I’ll address your points below:

  1. You are right. At the moment, there is no option to download the agent using wget. The only option right now is to download it from TestProject’s website. If your machine doesn’t have GUI, you can download it in another machine and copy it. That’s being said, I’ll definitely forward this request and perhaps we will allow it in the future.

  2. I will also check the uninstall process. Perhaps there is an issue with it.

  3. The agent automatically detects a proxy and in cases where you need to enter your proxy’s credentials, you will be presented with a UI form during the agent registration process. In this form, you will have to provide the necessary credentials to allow communication with your proxy. If you want to do it manually, there is an ‘agent-configuration.json’ file in the agent folder where you can do it. You can find more information about it in our official documentation: https://docs.testproject.io/tips-and-tricks/troubleshooting

  4. Providing an IP address is required only when you registering a remote agent. Can you please elaborate on your use case? Maybe we can think of another better solution for you. Also, we are working on a new feature that will allow you to create a docker with an agent installed on it. This should be released soon :slight_smile:

Regarding your recent post, this is the ‘agent-configuration.json’ file that I mentioned above.

Let me know if there’s anything else I can help you with,
Amit

1 Like

Hi @martin.jahr,

I wanted to update you about the agent installation under /opt/agent.
To install the agent in this location, you’ll have to grant read, write and execution permissions to this directory. Otherwise, you will get the errors you mentioned above.

Kind regards,
Amit

Hello @amit.yahav

Thanks for the response.
In fact, I need to manage remote agents since some of my backend tests involve heavy-duty date processing tasks which cannot be done on a regular desktop machine. For that purpose, I‘d like to connect AWS EC2 instances as a registered listener, ideally with an auto-register feature.
Docker could solve my issues. Curious how you plan to Sichte registry there.

Until this is available, I‘d like to know how the platform connects to the agents. Which ports need to be open? Is it all via 8443?

Thanks
Martin

Hi @martin.jahr,

You can definitely use AWS EC2 instances for that purpose. You can read more about it in this blog post: https://blog.testproject.io/2019/02/07/setup-cloud-test-automation-lab-using-aws/

The registration process on the EC2 instance is not done automatically, but you only have to do it once. You can either do it on each machine separately, or remotely from a single machine using the instances’ public IP address as described here: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html#concepts-public-addresses

Once the dockerized agent feature will be ready to use, you’ll be able to download an agent from the Docker Hub and the registration process will be done automatically.

The agent is using port 8443 by default. If this port is already in use, you can change the default port number in the ‘agent-configuration.json’ file.

I’ll keep you updated regarding the dockerized agent feature :slight_smile:

Kind regards,
Amit