diff --git a/.ci/config/tls/app.yaml b/.ci/config/tls/app.yaml index 016223c..bd852f2 100644 --- a/.ci/config/tls/app.yaml +++ b/.ci/config/tls/app.yaml @@ -8,6 +8,7 @@ apps: jsonData: appUrl: https://localhost:3000 + theme: dark orientation: portrait layout: simple dashboardMode: full diff --git a/.ci/docker-compose.yaml b/.ci/docker-compose.yaml index 489698d..60d8a4f 100644 --- a/.ci/docker-compose.yaml +++ b/.ci/docker-compose.yaml @@ -45,6 +45,8 @@ services: - "GF_LOG_FILTERS=rendering:debug plugin.mahendrapaipuri-dashboardreporter-app:debug" # Set CI mode to remove header in report - __REPORTER_APP_CI_MODE=true + - GF_REPORTER_PLUGIN_REMOTE_CHROME_URL=${GF_REPORTER_PLUGIN_REMOTE_CHROME_URL:-} + renderer_plain: image: grafana/grafana-image-renderer:latest environment: @@ -95,7 +97,6 @@ services: - GF_SERVER_PROTOCOL=https - GF_SERVER_CERT_KEY=/etc/grafana/tls/localhost.key - GF_SERVER_CERT_FILE=/etc/grafana/tls/localhost.crt - - GF_REPORTER_PLUGIN_IGNORE_HTTPS_ERRORS=true # Grafana image renderer - GF_RENDERING_SERVER_URL=http://renderer_tls:8081/render - GF_RENDERING_CALLBACK_URL=https://grafana_tls:${GF_SERVER_HTTP_PORT:-3000}/ @@ -103,6 +104,9 @@ services: - GF_LOG_FILTERS=rendering:debug # Set CI mode to remove header in report - __REPORTER_APP_CI_MODE=true + - GF_REPORTER_PLUGIN_REMOTE_CHROME_URL=${GF_REPORTER_PLUGIN_REMOTE_CHROME_URL:-} + - GF_REPORTER_PLUGIN_SKIP_TLS_CHECK=true + renderer_tls: image: grafana/grafana-image-renderer:latest environment: @@ -113,3 +117,9 @@ services: - RENDERING_CLUSTERING_MAX_CONCURRENCY=5 - RENDERING_CLUSTERING_TIMEOUT=60 - IGNORE_HTTPS_ERRORS=true + + chrome: + image: chromedp/headless-shell:latest + shm_size: 2G + init: true + network_mode: service:grafana_plain diff --git a/.ci/reports/alternative.pdf b/.ci/reports/alternative.pdf index 8a3fd90..17c791e 100644 Binary files a/.ci/reports/alternative.pdf and b/.ci/reports/alternative.pdf differ diff --git a/.github/workflows/step_build.yml b/.github/workflows/step_build.yml index 64d15e6..5e88afb 100644 --- a/.github/workflows/step_build.yml +++ b/.github/workflows/step_build.yml @@ -56,7 +56,7 @@ jobs: --headless --hide-scrollbars --mute-audio - --disable-background-networking„ + --disable-background-networking --enable-features=NetworkService,NetworkServiceInProcess --disable-background-timer-throttling --disable-backgrounding-occluded-windows diff --git a/.github/workflows/step_e2e-tests.yml b/.github/workflows/step_e2e-tests.yml index eaf22b4..a3f0409 100644 --- a/.github/workflows/step_e2e-tests.yml +++ b/.github/workflows/step_e2e-tests.yml @@ -13,10 +13,20 @@ jobs: fail-fast: false matrix: include: + # Grafana v10 with user cookie auth + - grafana-version: 10.4.3 + service-accounts: 'null' # Use non empty string for env var to propagate + remote-chrome-url: ws://localhost:9222 + # Grafana v10 - grafana-version: 10.4.5 + service-accounts: externalServiceAccounts + remote-chrome-url: '' + # Grafana v11 - grafana-version: 11.1.0 + service-accounts: externalServiceAccounts + remote-chrome-url: ws://localhost:9222 steps: - uses: actions/checkout@v4 @@ -42,13 +52,18 @@ jobs: install-dependencies: true - name: Run e2e tests + env: + GRAFANA_VERSION: ${{ matrix.grafana-version }} + GF_FEATURE_TOGGLES_ENABLE: ${{ matrix.service-accounts }} + GF_REPORTER_PLUGIN_REMOTE_CHROME_URL: ${{ matrix.remote-chrome-url}} run: | # Upload/Download artifacts wont preserve permissions # https://github.com/actions/upload-artifact?tab=readme-ov-file#permission-loss # Add +x bits on executables chmod -R +x dist/gpx_* - - GRAFANA_VERSION=${{ matrix.grafana-version }} yarn e2e:server:up + + # Start containers + yarn e2e:server:up # Sleep for a while for containers to be up and running sleep 20