0

Here is the problem: I do have several python packages that do have unittest that do require access to different online services in order to run, like connecting to a postgresql database or a LDAP/AD server.

In many cases these are not going to execute successfully because local network is fire-walled, allowing only basic outgoing traffic on ports like 22, 80, 443, 8080 and 8443.

I know that first thing coming into your mind is: build a VPN. This is not the solution I am looking for, and that's due to two important issues: will affect other software running on the same machine probably breaking them.

Another solution I had in mind was SSH port forwarding, which I successfully used but also this is very hard to configure and worse it does require me to re-configure the addresses the python script is trying to connect to, and I do not want to go this way.

I am looking for a solution that could work like this:

  • detect if there is a firewall preventing your access
  • setup the bypassing strategy (proxy?)
  • run the script
  • restore settings.

Is there a way to setup this in a transparent way, one that would not require me to make changes to the executed script/app ?

sorin
  • 161,544
  • 178
  • 535
  • 806

1 Answers1

1

Is it possible to have the script itself run through these steps? By this I mean have the setup phase of your unit tests probe for firewall, and if detected dynamically setup a proxy somehow, use it to run unit tests, then when done teardown proxy. That seems like it would achieve the transparency you're aiming for.

Sean Azlin
  • 886
  • 7
  • 21