[tx] updated translations from transifex #379
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: GUI Tests | |
| on: | |
| pull_request: | |
| push: | |
| branches: [ master ] | |
| tags: [ "*" ] | |
| schedule: | |
| - cron: "0 0 * * *" | |
| env: | |
| NPM_GHERLINT: "@gherlint/gherlint@1.1.0" | |
| S3_PUBLIC_CACHE_SERVER: "https://cache.owncloud.com" | |
| S3_PUBLIC_CACHE_BUCKET: "public" | |
| jobs: | |
| lint-gui-test: | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'pull_request' | |
| container: | |
| image: owncloudci/squish:fedora-42-8.1.0-qt68x-linux64 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Setup NodeJs | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: 18 | |
| - name: Python lint | |
| run: | | |
| export PATH=$PATH:/github/home/.local/bin | |
| make -C test/gui install | |
| make -C test/gui python-lint | |
| - name: Gherkin lint | |
| run: | | |
| npm install -g ${{ env.NPM_GHERLINT }} | |
| make -C test/gui gherkin-lint | |
| gui-tests: | |
| runs-on: ubuntu-latest | |
| container: | |
| image: owncloudci/squish:fedora-42-8.1.0-qt68x-linux64 | |
| env: | |
| PLAYWRIGHT_BROWSERS_PATH: /__w/client/client/test/gui/.playwright | |
| GITHUB_REPO: ${{ github.repository }} | |
| GITHUB_RUN_NUMBER: ${{ github.run_number }} | |
| services: | |
| ocis: | |
| image: owncloud/ocis-rolling:latest | |
| ports: | |
| - 9200:9200 | |
| env: | |
| OCIS_URL: https://ocis:9200 | |
| OCIS_LOG_LEVEL: "error" | |
| OCIS_LOG_PRETTY: "true" | |
| OCIS_LOG_COLOR: "true" | |
| OCIS_INSECURE: "true" | |
| PROXY_ENABLE_BASIC_AUTH: "true" | |
| OCIS_ADMIN_USER_ID: "some-admin-user-id-0000-000000000000" | |
| IDM_ADMIN_PASSWORD: "admin" | |
| OCIS_SYSTEM_USER_ID: "some-system-user-id-000-000000000000" | |
| OCIS_SYSTEM_USER_API_KEY: "some-system-user-machine-auth-api-key" | |
| OCIS_JWT_SECRET: "some-ocis-jwt-secret" | |
| OCIS_MACHINE_AUTH_API_KEY: "some-ocis-machine-auth-api-key" | |
| OCIS_TRANSFER_SECRET: "some-ocis-transfer-secret" | |
| COLLABORATION_WOPIAPP_SECRET: "some-wopi-secret" | |
| IDM_SVC_PASSWORD: "some-ldap-idm-password" | |
| GRAPH_LDAP_BIND_PASSWORD: "some-ldap-idm-password" | |
| IDM_REVASVC_PASSWORD: "some-ldap-reva-password" | |
| GROUPS_LDAP_BIND_PASSWORD: "some-ldap-reva-password" | |
| USERS_LDAP_BIND_PASSWORD: "some-ldap-reva-password" | |
| AUTH_BASIC_LDAP_BIND_PASSWORD: "some-ldap-reva-password" | |
| IDM_IDPSVC_PASSWORD: "some-ldap-idp-password" | |
| IDP_LDAP_BIND_PASSWORD: "some-ldap-idp-password" | |
| GATEWAY_STORAGE_USERS_MOUNT_ID: "storage-users-1" | |
| STORAGE_USERS_MOUNT_ID: "storage-users-1" | |
| GRAPH_APPLICATION_ID: "application-1" | |
| OCIS_SERVICE_ACCOUNT_ID: "service-account-id" | |
| OCIS_SERVICE_ACCOUNT_SECRET: "service-account-secret" | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Build client | |
| run: | | |
| mkdir -p build | |
| cd build | |
| cmake -G"Ninja" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DBUILD_TESTING=OFF -S .. | |
| ninja | |
| - name: Install Python Modules | |
| run: | | |
| export PATH=$PATH:/github/home/.local/bin | |
| make -C test/gui install | |
| python3.10 -m pip list -v | |
| - name: Create GUI test report directory | |
| run: | | |
| mkdir test/gui/guiReportUpload/screenshots -p | |
| chmod 777 test/gui -R | |
| - name: Wait for ocis service | |
| run: | | |
| echo "Waiting for ocis" | |
| # 150s timeout | |
| for i in {1..30}; do | |
| if curl -kfsSL https://ocis:9200 > /dev/null; then | |
| echo "ocis is up ✅" | |
| exit 0 | |
| fi | |
| echo "Retrying in 5s..." | |
| sleep 5 | |
| done | |
| echo "❌ ocis failed to start" && exit 1 | |
| - name: Run GUI test | |
| id: run_gui_test | |
| env: | |
| LICENSEKEY: ${{ secrets.SQUISH_LICENSEKEY }} | |
| GUI_TEST_REPORT_DIR: /__w/client/client/test/gui/guiReportUpload | |
| CLIENT_REPO: . | |
| OCIS_URL: https://ocis:9200 | |
| BACKEND_HOST: https://ocis:9200 | |
| SECURE_BACKEND_HOST: https://ocis:9200 | |
| OCIS: true | |
| SERVER_INI: test/gui/ci/server.ini | |
| SQUISH_PARAMETERS: > | |
| --testsuite test/gui | |
| --reportgen html,test/gui/guiReportUpload | |
| --envvar QT_LOGGING_RULES=sync.httplogger=true;gui.socketapi=false | |
| --tags ~@skip --tags ~@skipOnLinux | |
| ${{ | |
| !contains(github.event.pull_request.title, 'full-ci') | |
| && '--abortOnFail' || '' | |
| }} | |
| STACKTRACE_FILE: test/gui/guiReportUpload/stacktrace.log | |
| OWNCLOUD_CORE_DUMP: 1 | |
| RECORD_VIDEO_ON_FAILURE: false | |
| COREPACK_ENABLE_STRICT: 0 | |
| HOME: /home/headless | |
| run: bash /dockerstartup/entrypoint.sh | |
| - name: Upload GUI test result | |
| if: ${{ failure() && steps.run_gui_test.outcome == 'failure' }} | |
| run: | | |
| curl -L https://dl.min.io/client/mc/release/linux-amd64/mc -o /tmp/mc | |
| chmod +x /tmp/mc | |
| /tmp/mc alias set cache ${{ env.S3_PUBLIC_CACHE_SERVER }} ${{ secrets.CACHE_PUBLIC_S3_ACCESS_KEY }} ${{ secrets.CACHE_PUBLIC_S3_SECRET_KEY }} | |
| /tmp/mc cp --recursive test/gui/guiReportUpload cache/${{ env.S3_PUBLIC_CACHE_BUCKET }}/${{ github.repository }}/${{ github.run_number }}/ocis | |
| - name: Log GUI reports | |
| if: ${{ failure() && steps.run_gui_test.outcome == 'failure' }} | |
| env: | |
| REPORT_DIR: /__w/client/client/test/gui/guiReportUpload | |
| SERVER_TYPE: ocis | |
| run: bash test/gui/ci/log_reports.sh ${REPORT_DIR} ${GITHUB_REPO} ${GITHUB_RUN_NUMBER} ${SERVER_TYPE} | |
| notification: | |
| needs: gui-tests | |
| if: github.event_name == 'schedule' | |
| runs-on: ubuntu-latest | |
| container: | |
| image: owncloudci/alpine:latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: notify-matrix | |
| env: | |
| CACHE_ENDPOINT: ${{ env.S3_PUBLIC_CACHE_SERVER }} | |
| CACHE_BUCKET: ${{ env.S3_PUBLIC_CACHE_BUCKET }} | |
| MATRIX_TOKEN: ${{ secrets.MATRIX_TOKEN }} | |
| GITHUB_BUILD_STATUS: ${{ needs.gui-tests.result }} | |
| COMMIT_AUTHOR: ${{ github.event.head_commit.author.name }} | |
| run: bash test/gui/ci/notification_template.sh . |