-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
Run platform functional tests with/without base-path #63672
Comments
Pinging @elastic/kibana-platform (Team:Platform) |
Yeah, one problem with testing with the base path turned on is that we test against the distributable, which doesn't include the base path proxy, so we would need to setup a separate proxy for use in the functional tests (which would probably be ideal since the base path proxy has conveniences for development that production proxies do not). We would also need the tests to work against cloud Kibana instances that don't have base paths configured, so they can't rely on the base path being there, but that also shouldn't be a problem. |
Can we run Nginx as a reverse proxy when #68173 merged? |
We'd probably need to add support for running the containers on the host network or something, but should be a pretty straightforward change to the dockerServers service. Only thing is that we want to make sure we don't make docker required to run most tests, so it'd be ideal if it ran as an alternate way to connect to the standard Kibana instance that most of the tests talk to. |
Is this a firm decision? If we're finding success with Docker for test orchestration, I don't think we should hesitate to require it. It's quite a mature technology at this point and well supported on all platforms. |
The reasons I have for not wanting to require docker are not that it's new or unsupported. I still feel like there are a number of usability gotchas, like debugging specific processes, image creation performance with massive directories like our I know a lot of teams rely on docker, I've investigated moving several parts of the "operations experience" to Docker, and every time I have run into a roadblock that I makes things overall worse. I'm still open minded to applying docker strategically, but I just want to express caution about requiring it without actually testing things out and making sure that it doesn't just make things conceptually simpler, but actually makes things better. |
Sorry, I'm backing up my stance that we "make sure we don't make docker required", but requiring it for something small like nginx might be reasonable as most of the issues I described could be eliminated
So from that angle I might have been a bit hasty about "not requiring docker" for something like an nginx proxy. That said, a module which implements a proxy (maybe based on any popular proxy library from npm) is a much simply way to accomplish this in my mind. |
I suppose, yeah |
ok, I think we might use another nodejs server since we run FTR not in dev mode anyway |
FTR runs functional tests with
--no-base-path
option.kibana/test/common/config.js
Line 43 in 5bc233f
That is a source of many regressions during migration:
#54687
#56409
#57301
#62016
#63417 (review)
We would like to have reliable function tests to prevent such problems in the future.
Probably @elastic/kibana-operations can provide more information about the requirement to run FTR without a base path. As I can see this setting was on since the
kbn-test
package was introduced in #18568I'm not sure we could and should enable configurable base-path for all the tests. Probably, we can start with moving the platform tests to a separate test config that runs tests with and without the
base-path
option.The text was updated successfully, but these errors were encountered: