Skip to content

Use QJazz in tests #5168

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

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft

Use QJazz in tests #5168

wants to merge 1 commit into from

Conversation

dmarteau
Copy link
Member

@dmarteau dmarteau commented Jan 8, 2025

QJazz QGIS server in tests.

@dmarteau dmarteau requested a review from Gustry January 8, 2025 15:59
@github-actions github-actions bot added this to the 3.10.0 milestone Jan 8, 2025
Copy link
Member

@Gustry Gustry left a comment

Choose a reason for hiding this comment

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

I tried it locally, it works.
Still an issue on CI for now.

Will tags such as 3.34, 3.40 will be available on Docker hubs later ?

@dmarteau dmarteau force-pushed the qjazz-test branch 2 times, most recently from 23d1e4b to ca13211 Compare January 13, 2025 12:40
Copy link
Member

@Gustry Gustry left a comment

Choose a reason for hiding this comment

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

  • Needed QGIS Server plugins are not installed in the current state of this PR. That's why the CI is not working. It was working locally, because my plugins were already existing before.
  • Can you remove the script tests/add_server_plugins.sh ?
  • In tests/add_server_plugins.sh, we need to use to the custom repository for QGIS plugins. Please do the change
  • Will tags such as 3.34, 3.40 will be available on Docker hubs ? https://hub.docker.com/r/3liz/qjazz/tags

@Gustry
Copy link
Member

Gustry commented Jan 13, 2025

Is-it not missing the mount for QGIS plugins in map container ? But it doesn't seem to be enough to have QGIS server plugins installed, even when rebuilding/starting containers.

@Gustry
Copy link
Member

Gustry commented Jan 13, 2025

For testing purpose, I have pressed the rebased button, to have latest commits from master.

@dmarteau
Copy link
Member Author

dmarteau commented Jan 13, 2025

Is-it not missing the mount for QGIS plugins in map container ? But it doesn't seem to be enough to have QGIS server plugins installed, even when rebuilding/starting containers.

Rules for plugins are the following:

  1. Plugins locations should be mounted somewhere and declared in config (or QGIS_PLUGINPATH).
  2. Wether or not plugin are installed at startup depends on configuration settings ('auto' vs 'external').
  3. Allowed plugins must be explicitely declared in configuration settings (see tests/docker-conf/qgis-server.toml)

@dmarteau
Copy link
Member Author

  • Will tags such as 3.34, 3.40 will be available on Docker hubs ?

On release.

@Gustry Gustry force-pushed the qjazz-test branch 2 times, most recently from 00fba5e to 42aefa7 Compare January 13, 2025 17:00
@dmarteau
Copy link
Member Author

There is tests checking OnlineResource: they seems to be wrong to me.

The qjazz proxy handle standard Forwarded headers as defined in RFC 7239 and legacy X-Forwarded-Host and X-Forwarded-Proto.

The path returned in the service response may be changed with the appropriate X-Qgis-Service-Url header (See the documentation for the QGIS_SERVER_SERVICE_URL environment variable.

@dmarteau
Copy link
Member Author

dmarteau commented Jan 13, 2025

Found that QGIS does not stick to standard and handle headers in case sensitive way, at least for 'X-Qgis-*' headers.

@dmarteau
Copy link
Member Author

I cannot check what's wrong on failed test, i need at least the request that failed if this is is a request to the QGIS service.

@dmarteau
Copy link
Member Author

@Gustry : please check the timeout error on Playwright test, with proper rights there is no issue locally with the url I can guess from the details.

@Gustry Gustry force-pushed the qjazz-test branch 4 times, most recently from 4bbaab3 to 51d7be8 Compare January 15, 2025 10:01
@Gustry
Copy link
Member

Gustry commented Jan 15, 2025

Something is very slow in this PR.
At the end of the CI, there will be some artifacts generated : https://github.com/3liz/lizmap-web-client/actions/runs/12785872522?pr=5168, especially all QGIS servers logs, from the container lizmapBRANCH_test_qgis.
Should we also save logs from lizmapBRANCH_test_qgis_rpc container ?

@dmarteau
Copy link
Member Author

dmarteau commented Feb 4, 2025

@Gustry LZMQGSRVVERSION is wrong in test: 3.34, should be qgis-ltr-eager|qgis-release-eager

@dmarteau
Copy link
Member Author

dmarteau commented Feb 4, 2025

@Gustry LZMQGSRVVERSION is wrong in test: 3.34, should be qgis-ltr-eager|qgis-release-eager

Fixed qgis-server value in matrix configuration.

@dmarteau
Copy link
Member Author

dmarteau commented Feb 4, 2025

@Gustry tests failed for reasons not related to Qjazz

@Gustry
Copy link
Member

Gustry commented Feb 4, 2025

Yes, we know the status of the current CI on the master branch, there are some ongoing work.
But playwright/editing-value-relation.spec.js, it's the first time I see it failing. (even if it's a new one since yesterday).

@dmarteau dmarteau force-pushed the qjazz-test branch 2 times, most recently from 8d8450a to 990cff4 Compare February 7, 2025 13:45
@dmarteau dmarteau force-pushed the qjazz-test branch 2 times, most recently from 7494821 to ddf2022 Compare February 17, 2025 16:33
@dmarteau dmarteau force-pushed the qjazz-test branch 2 times, most recently from a9fe19e to f956a0d Compare April 4, 2025 13:06
@dmarteau dmarteau force-pushed the qjazz-test branch 2 times, most recently from 599596e to 04b9361 Compare May 7, 2025 08:38
@dmarteau
Copy link
Member Author

dmarteau commented May 7, 2025

After rebasing from master, playwright tests are continuously failing.

Fixed

@dmarteau
Copy link
Member Author

dmarteau commented May 7, 2025

@Gustry is there a way to stop the tests at first failure and generate logs ? All tests are failing with a 30s timeout, that means we must wait for hours before getting the logs.

@dmarteau dmarteau force-pushed the qjazz-test branch 3 times, most recently from e4ff4e1 to f34b6f4 Compare May 7, 2025 13:50
@dmarteau
Copy link
Member Author

dmarteau commented May 7, 2025

@Gustry BLEEDING EDGE tests are completely failing because the plugin source url is invalid:

2025-05-07T13:52:42.475Z»   [32]»   INFO»   Installing plugins in /srv/qgis-server-plugins
Downloading https://packages.3liz.org/pub/server-plugins-repository/unstable/plugins.3.42.xml…
    HTTP Error 404: Not Found
2025-05-07T13:52:44.278Z»   [32]»   ERROR»  Cannot update plugins index, cancelling installation...
...

And thus the lizmap server plugin is not installed....

AMHA tests should not run at all if the Lizmap server plugin is not installed.

@Gustry Gustry modified the milestones: 3.10.0, 3.11.0 Jun 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
QGIS Server tests unit tests and docker configuration for tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants