Feature: code for "navigate to arbitrary dom node" - UI partially mis… #2204
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: Structr CI Pipeline | |
| on: | |
| push | |
| jobs: | |
| run-tests: | |
| if: ${{ !startsWith( github.actor, 'dependabot' ) }} | |
| runs-on: self-hosted | |
| environment: build-and-test | |
| strategy: | |
| matrix: | |
| include: | |
| - module: structr-base | |
| variableName: Base | |
| - module: structr-db-driver-api | |
| variableName: DB_DRIVER_API | |
| # - module: structr-memgraph-driver | |
| # variableName: MEMGRAPH_DRIVER | |
| # - module: structr-memory-driver | |
| # variableName: MEMORY_DRIVER | |
| - module: structr-modules | |
| variableName: MODULES | |
| - module: structr-neo4j-bolt-driver | |
| variableName: NEO4J_BOLT_DRIVER | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Start Test Database | |
| run: >- | |
| docker run -d --name ${{ matrix.module }}-test-${{ github.run_id }} | |
| -p 7687 | |
| -e NEO4J_AUTH=neo4j/admin123 | |
| -e NEO4J_ACCEPT_LICENSE_AGREEMENT=yes | |
| -e NEO4J_server_memory_heap_max__size=4G | |
| -e NEO4J_server_memory_pagecache_size=4G neo4j:2025 && | |
| echo "ASSIGNED_PORT_${{ matrix.variableName }}_${{ github.run_id }}=$(docker inspect --format='{{(index (index .NetworkSettings.Ports "7687/tcp") 0).HostPort}}' ${{ matrix.module }}-test-${{ github.run_id }})" >> $GITHUB_ENV | |
| - name: Install GraalVM | |
| uses: graalvm/setup-graalvm@v1 | |
| with: | |
| java-version: '25' | |
| distribution: 'graalvm-community' | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Compile and run Tests | |
| run: >- | |
| mvn clean install -q -DskipTests -DskipUITests -DskipDist -DskipDocker -DskipDeb -DskipDockerTestDB && | |
| cd ${{ matrix.module }} && | |
| mvn install -q -DskipDockerTestDB -Denv.testDatabaseConnection="bolt://localhost:${ASSIGNED_PORT_${{ matrix.variableName }}_${{ github.run_id }}}" | |
| - name: Stop Test Database | |
| if: always() | |
| run: docker stop ${{ matrix.module }}-test-${{ github.run_id }} | |
| run-ui-tests: | |
| if: ${{ false && !startsWith( github.actor, 'dependabot' ) }} | |
| runs-on: self-hosted | |
| environment: build-and-test | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Install GraalVM | |
| uses: graalvm/setup-graalvm@v1 | |
| with: | |
| java-version: '25' | |
| distribution: 'graalvm-community' | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Compile and run Tests | |
| run: >- | |
| mvn clean install -q -DskipTests -DskipUITests -DskipDist -DskipDocker -DskipDeb -DskipDockerTestDB && | |
| cd structr-app && | |
| mvn install -q -DskipDockerTestDB -DskipDeb -DskipDocker -DskipDockerTestDB | |
| build-and-deploy: | |
| runs-on: self-hosted | |
| environment: build-and-test | |
| if: ${{ success() && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/release') }} | |
| needs: run-tests | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v2 | |
| with: | |
| username: structr | |
| password: ${{ secrets.STRUCTR_DOCKER_PASSWORD }} | |
| - name: Install GraalVM | |
| uses: graalvm/setup-graalvm@v1 | |
| with: | |
| java-version: '25' | |
| distribution: 'graalvm-community' | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| - run: mvn -U clean install -Pwith-sources -DskipDockerTestDB -DskipTests -DskipUITests | |
| - name: Upload binaries | |
| run: >- | |
| cd structr-app && | |
| scp -v target/structr-*.deb download.structr.com:/files/repositories/upload > /dev/null 2>&1 && | |
| scp -v target/structr-*-dist.zip download.structr.com:/files/repositories/upload >/dev/null 2>&1 | |
| cleanup-system: | |
| runs-on: self-hosted | |
| if: always() | |
| needs: [run-tests, build-and-deploy] | |
| steps: | |
| - name: Cleanup docker | |
| run: docker rm -f $(docker ps -aq --filter "network=ui-test-network") 2>/dev/null || true && docker container prune -f && docker image prune -f && docker volume prune -f | |
| - name: Cleanup runner home | |
| run: cd ~/actions-runner/_work/ && rm -rf structr |