This is an automated email from the ASF dual-hosted git repository.
andy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git
The following commit(s) were added to refs/heads/main by this push:
new 9c699eb0cc Add GH Actions for UI tests
9c699eb0cc is described below
commit 9c699eb0cc13fe496f1583a5c24f1bb9bc886db7
Author: Bruno P. Kinoshita <[email protected]>
AuthorDate: Sun Nov 10 18:11:26 2024 +0100
Add GH Actions for UI tests
---
.github/workflows/ui.yml | 90 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 90 insertions(+)
diff --git a/.github/workflows/ui.yml b/.github/workflows/ui.yml
new file mode 100644
index 0000000000..ee63f2654c
--- /dev/null
+++ b/.github/workflows/ui.yml
@@ -0,0 +1,90 @@
+## Licensed under the terms of http://www.apache.org/licenses/LICENSE-2.0
+
+name: Apache Jena UI
+
+on:
+ push:
+ branches: [ main ]
+ pull_request:
+ workflow_dispatch:
+
+permissions:
+ contents: read
+
+jobs:
+ # Unit tests, faster, only run on GH for the ASF repository.
+ unit-test-and-build:
+ if: github.repository == 'apache/jena'
+
+ runs-on: ${{ matrix.os }}
+ timeout-minutes: 5
+
+ strategy:
+ fail-fast: false
+ matrix:
+ os: [ ubuntu-latest ]
+ java_version: [ '21' ]
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+
+ - name: Setup Node
+ uses: actions/setup-node@v4
+ with:
+ working-directory: jena-fuseki2/jena-fuseki-ui
+ node-version: 'lts/*'
+
+ - name: Set up JDK ${{ matrix.java_version }}
+ uses: actions/setup-java@v4
+ with:
+ distribution: 'temurin'
+ java-version: ${{ matrix.java_version }}
+
+ - name: Build with Maven
+ run: mvn -B --file pom.xml --projects jena-fuseki2/jena-fuseki-ui
--also-make-dependents test install
+
+ - name: Lint
+ working-directory: jena-fuseki2/jena-fuseki-ui
+ run: yarn lint
+
+ cypress-run:
+ # End-to-end tests, only run on GH for the ASF repository.
+ if: github.repository == 'apache/jena'
+
+ runs-on: ${{ matrix.os }}
+ timeout-minutes: 15
+
+ strategy:
+ fail-fast: false
+ matrix:
+ browser: [ firefox, chrome, electron ]
+ os: [ ubuntu-latest ]
+
+ env:
+ COVERAGE: true
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+
+ - name: Setup Node
+ uses: actions/setup-node@v4
+ with:
+ working-directory: jena-fuseki2/jena-fuseki-ui
+ node-version: 'lts/*'
+
+ - name: Test (E2E)
+ uses: cypress-io/github-action@v6
+ env:
+ BASE_URL: http://localhost:8080/
+ FUSEKI_URL: http://localhost:3030/
+ with:
+ working-directory: jena-fuseki2/jena-fuseki-ui
+ config-file: cypress.config.mjs
+ browser: ${{ matrix.browser }}
+ build: yarn run build
+ start: yarn run serve:offline
+ config: baseUrl=${{ env.BASE_URL }}
+ wait-on: '${{ env.FUSEKI_URL }}$/ping, ${{ env.BASE_URL }}index.html'
+ wait-on-timeout: 120