Skip to content

Conversation

@rustworthy
Copy link

covers first step of issue #2517 as described here

cc @spetz

Copy link
Contributor

@hubcio hubcio Dec 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this file does not fit our github actions CI. please check .github/config/components.yml and add task "test" to web-ui, and put the test implementation there.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added e2e task to web-ui component (similar to how some of the SDKs got it named). This will hit Run Web UI E2E Test Suite step in _test.yml, which - in its turn - will call a dedicated action (.github/actions/rust/e2e-web). Quite a few indirections 😅

@rustworthy rustworthy changed the title End-to-end tests for Apache Iggy Web UI feat(web-ui,tests): e2e tests setup for Apache Iggy Web UI Dec 29, 2025
@rustworthy rustworthy changed the title feat(web-ui,tests): e2e tests setup for Apache Iggy Web UI feat(web): e2e tests setup for Apache Iggy Web UI Dec 30, 2025
@rustworthy rustworthy force-pushed the iggy-web-ui-tests branch 5 times, most recently from 378b5cd to 0ca4c50 Compare December 30, 2025 20:31
@rustworthy rustworthy requested a review from hubcio December 31, 2025 07:29
Copy link
Contributor

@hubcio hubcio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you should reconsider the approach: maybe don't use docker and wire this test into existing testing infra?

The solution is to use the existing TestServer which already supports HTTP with random port allocation, startup detection, and automatic cleanup. The tests should be moved to core/integration/tests/server/web.rs to follow the existing test organization.
Also, test has to be ran only if server was built with feature iggy-web.

I'm proposing this because you based everything on Rust, and it seems like good fit here.

Comment on lines +62 to +65
# if we only detect changes to the Web UI end-to-end test suite,
# do not trigger all the workflows: it is "web-ui" component and
# its dedicated task that got e2e tests execution covered
- "!core/server/tests/e2e-web/**"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I disagree. By changing iggy-server, you can change the binary protocol (contract or API), which can break the frontend tests you wrote, and we plan to catch it in CI.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this only ignores changes to the end-to-end test suite rather than iggy-server sources, no?

paths:
- "web/**"
tasks: ["lint", "build"]
- "core/server/**"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove this line and add depends-on: rust-server

@rustworthy
Copy link
Author

Thanks for taking time to review the PR, I will need to close this and maybe re-open once I got extra capacity.

@rustworthy rustworthy closed this Jan 2, 2026
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

Successfully merging this pull request may close these issues.

2 participants