Add __.V() wrapping for Vertex objects in to() and from_() methods #9844
Workflow file for this run
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: build-test | |
| on: [push, pull_request] | |
| env: | |
| # modules commonly excluded from builds as they have their own independent non-JVM setups and can be run in parallel. | |
| # take care when modifying this list because GLVs use shell commands to remove themselves from this list and | |
| # modifications could break patterns of replacement they are searching for. | |
| EXCLUDE_MODULES: '-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlin-go,-:gremlin-javascript,-:gremlint,-:gremlin-mcp,-:gremlin-python' | |
| EXCLUDE_FOR_GLV: '-:gremlin-annotations,-:gremlin-console,-:hadoop-gremlin,-:neo4j-gremlin,-:spark-gremlin,-:sparql-gremlin' | |
| jobs: | |
| smoke: | |
| name: smoke | |
| timeout-minutes: 10 | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Build with Maven | |
| run: mvn clean install -DskipTests -Dci --batch-mode -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn | |
| java-jdk17: | |
| name: mvn clean install - jdk17 | |
| timeout-minutes: 45 | |
| needs: smoke | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 17 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '17' | |
| distribution: 'temurin' | |
| - name: Build with Maven | |
| run: mvn clean install -pl $EXCLUDE_MODULES -Dci --batch-mode -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn | |
| java-jdk11: | |
| name: mvn clean install - jdk11 | |
| timeout-minutes: 45 | |
| needs: smoke | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Build with Maven | |
| run: mvn clean install -pl $EXCLUDE_MODULES -Dci --batch-mode -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn -Dcoverage | |
| - name: Upload to Codecov | |
| uses: codecov/codecov-action@v5 | |
| with: | |
| directory: ./gremlin-tools/gremlin-coverage/target/site | |
| gremlin-server-default: | |
| name: gremlin-server default | |
| timeout-minutes: 45 | |
| needs: smoke | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Build with Maven | |
| run: | | |
| mvn clean install -pl $EXCLUDE_MODULES -q -DskipTests -Dci | |
| mvn verify -pl :gremlin-server -DskipTests -DskipIntegrationTests=false -DincludeNeo4j | |
| gremlin-server-unified: | |
| name: gremlin-server unified | |
| timeout-minutes: 45 | |
| needs: smoke | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Build with Maven | |
| run: | | |
| mvn clean install -pl $EXCLUDE_MODULES -q -DskipTests -Dci | |
| mvn verify -pl :gremlin-server -DskipTests -DskipIntegrationTests=false -DincludeNeo4j -DtestUnified=true | |
| cache-gremlin-server-docker-image: | |
| name: cache gremlin-server docker image | |
| timeout-minutes: 10 | |
| needs: smoke | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Generate Gremlin Server Base | |
| working-directory: . | |
| run: | | |
| mvn clean install -pl gremlin-server -DskipTests -DskipIntegrationTests=true -Dci -am | |
| - name: Save Docker image | |
| working-directory: ./gremlin-server | |
| run: docker save --output gremlin-server.tar tinkerpop/gremlin-server | |
| - uses: actions/cache@v4 | |
| id: gremlin-server-test-docker-image | |
| with: | |
| path: | | |
| ./gremlin-server/* | |
| ~/.m2/repository/org/apache/tinkerpop/* | |
| key: ${{ github.sha }} | |
| # Disabled until Linux containers are supported on Windows runners: https://github.com/actions/virtual-environments/issues/252 | |
| # - name: Upload Docker image for Windows | |
| # uses: actions/upload-artifact@v3 | |
| # with: | |
| # name: ${{ github.sha }} | |
| # path: ./gremlin-server/gremlin-server.tar | |
| # retention-days: 1 | |
| spark-core: | |
| name: spark core | |
| timeout-minutes: 45 | |
| needs: smoke | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Build with Maven Windows | |
| if: runner.os == 'Windows' | |
| run: | | |
| mvn clean install -pl %EXCLUDE_MODULES% -q -DskipTests -DskipImageBuild -Dci | |
| - name: Build with Maven Ubuntu | |
| if: runner.os == 'Linux' | |
| run: | | |
| mvn clean install -pl $EXCLUDE_MODULES -q -DskipTests -Dci | |
| mvn verify -pl :spark-gremlin -DskipTests -DskipIntegrationTests=false '-Dit.test=*IntegrateTest,!SparkGryoSerializerGraphComputerProcessIntegrateTest' | |
| spark-gryo: | |
| name: spark gryo | |
| timeout-minutes: 45 | |
| needs: smoke | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Build with Maven Windows | |
| if: runner.os == 'Windows' | |
| run: | | |
| mvn clean install -pl %EXCLUDE_MODULES% -q -DskipTests -DskipImageBuild -Dci | |
| - name: Build with Maven Ubuntu | |
| if: runner.os == 'Linux' | |
| run: | | |
| mvn clean install -pl $EXCLUDE_MODULES -q -DskipTests -Dci | |
| mvn verify -pl :spark-gremlin -DskipTests -DskipIntegrationTests=false -Dit.test=SparkGryoSerializerGraphComputerProcessIntegrateTest | |
| gremlin-console: | |
| name: gremlin-console | |
| timeout-minutes: 20 | |
| needs: smoke | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Build with Maven | |
| run: | | |
| touch gremlin-python/.glv | |
| mvn clean install -pl $EXCLUDE_MODULES -q -DskipTests -Dci | |
| mvn verify -pl :gremlin-console -DskipTests -DskipIntegrationTests=false | |
| gremlin-driver: | |
| name: gremlin-driver | |
| timeout-minutes: 20 | |
| needs: cache-gremlin-server-docker-image | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Build with Maven | |
| run: | | |
| mvn clean install -pl $EXCLUDE_MODULES -q -DskipTests -Dci | |
| mvn verify -pl gremlin-driver -DskipIntegrationTests=false | |
| # javascript-node20: | |
| # name: javascript-all-node20 | |
| # timeout-minutes: 15 | |
| # needs: cache-gremlin-server-docker-image | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - uses: actions/checkout@v5 | |
| # - name: Set up JDK 11 | |
| # uses: actions/setup-java@v5 | |
| # with: | |
| # java-version: '11' | |
| # distribution: 'temurin' | |
| # - name: Get Cached Server Base Image | |
| # uses: actions/cache@v4 | |
| # id: gremlin-server-test-docker-image | |
| # with: | |
| # path: | | |
| # ./gremlin-server/* | |
| # ~/.m2/repository/org/apache/tinkerpop/* | |
| # key: ${{ github.sha }} | |
| # - name: Load Docker Image | |
| # working-directory: ./gremlin-server | |
| # run: docker load --input gremlin-server.tar | |
| # - name: Build with Maven | |
| # run: | | |
| # EXCLUDE="-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlin-go,-:gremlin-python,$EXCLUDE_FOR_GLV" | |
| # mvn clean install -pl $EXCLUDE -q -DskipTests -Dci | |
| # mvn verify -pl :gremlin-javascript,:gremlint,:gremlin-mcp -Dnode.test.version=20 | |
| # javascript-node22: | |
| # name: javascript-glv-node22 | |
| # timeout-minutes: 15 | |
| # needs: cache-gremlin-server-docker-image | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - uses: actions/checkout@v5 | |
| # - name: Set up JDK 11 | |
| # uses: actions/setup-java@v5 | |
| # with: | |
| # java-version: '11' | |
| # distribution: 'temurin' | |
| # - name: Get Cached Server Base Image | |
| # uses: actions/cache@v4 | |
| # id: gremlin-server-test-docker-image | |
| # with: | |
| # path: | | |
| # ./gremlin-server/* | |
| # ~/.m2/repository/org/apache/tinkerpop/* | |
| # key: ${{ github.sha }} | |
| # - name: Load Docker Image | |
| # working-directory: ./gremlin-server | |
| # run: docker load --input gremlin-server.tar | |
| # - name: Build with Maven | |
| # run: | | |
| # EXCLUDE="-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlin-go,-:gremlin-python,$EXCLUDE_FOR_GLV" | |
| # mvn clean install -pl $EXCLUDE -q -DskipTests -Dci | |
| # mvn verify -pl :gremlin-javascript -Dnode.test.version=22 | |
| # javascript-node24: | |
| # name: javascript-glv-node24 | |
| # timeout-minutes: 15 | |
| # needs: cache-gremlin-server-docker-image | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - uses: actions/checkout@v5 | |
| # - name: Set up JDK 11 | |
| # uses: actions/setup-java@v5 | |
| # with: | |
| # java-version: '11' | |
| # distribution: 'temurin' | |
| # - name: Get Cached Server Base Image | |
| # uses: actions/cache@v4 | |
| # id: gremlin-server-test-docker-image | |
| # with: | |
| # path: | | |
| # ./gremlin-server/* | |
| # ~/.m2/repository/org/apache/tinkerpop/* | |
| # key: ${{ github.sha }} | |
| # - name: Load Docker Image | |
| # working-directory: ./gremlin-server | |
| # run: docker load --input gremlin-server.tar | |
| # - name: Build with Maven | |
| # run: | | |
| # EXCLUDE="-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlin-go,-:gremlin-python,$EXCLUDE_FOR_GLV" | |
| # mvn clean install -pl $EXCLUDE -q -DskipTests -Dci | |
| # mvn verify -pl :gremlin-javascript -Dnode.test.version=24 | |
| python: | |
| name: python | |
| timeout-minutes: 20 | |
| needs: cache-gremlin-server-docker-image | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK 11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Set up Python 3.x | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: '3.10' | |
| - name: Build with Maven | |
| run: | | |
| touch gremlin-python/.glv | |
| EXCLUDE="${EXCLUDE_MODULES/,-:gremlin-python},$EXCLUDE_FOR_GLV" | |
| mvn clean install -pl $EXCLUDE -q -DskipTests -Dci | |
| mvn verify -pl gremlin-python | |
| # dotnet: | |
| # name: .NET | |
| # timeout-minutes: 20 | |
| # needs: cache-gremlin-server-docker-image | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - uses: actions/checkout@v5 | |
| # - name: Set up JDK11 | |
| # uses: actions/setup-java@v5 | |
| # with: | |
| # java-version: '11' | |
| # distribution: 'temurin' | |
| # - name: Set up .NET 8.0.x | |
| # uses: actions/setup-dotnet@v4 | |
| # with: | |
| # dotnet-version: '8.0.x' | |
| # - name: Get Cached Server Base Image | |
| # uses: actions/cache@v4 | |
| # id: gremlin-server-test-docker-image | |
| # with: | |
| # path: | | |
| # ./gremlin-server/* | |
| # ~/.m2/repository/org/apache/tinkerpop/* | |
| # key: ${{ github.sha }} | |
| # - name: Load Docker Image | |
| # working-directory: ./gremlin-server | |
| # run: docker load --input gremlin-server.tar | |
| # - name: Build with Maven | |
| # run: | | |
| # touch gremlin-dotnet/src/.glv | |
| # touch gremlin-dotnet/test/.glv | |
| # EXCLUDE="${EXCLUDE_MODULES/-:gremlin-dotnet-source,-:gremlin-dotnet-tests,},$EXCLUDE_FOR_GLV" | |
| # mvn clean install -pl $EXCLUDE -q -DskipTests -Dci | |
| # mvn verify -pl :gremlin-dotnet,:gremlin-dotnet-tests -P gremlin-dotnet | |
| neo4j-gremlin: | |
| name: neo4j-gremlin | |
| timeout-minutes: 20 | |
| needs: smoke | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Set up JDK11 | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: '11' | |
| distribution: 'temurin' | |
| - name: Build with Maven | |
| run: | | |
| mvn clean install -pl $EXCLUDE_MODULES -q -DskipTests -Dci | |
| mvn verify -pl :neo4j-gremlin -DincludeNeo4j | |
| # go: | |
| # name: go | |
| # timeout-minutes: 20 | |
| # needs: cache-gremlin-server-docker-image | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - name: Checkout | |
| # uses: actions/checkout@v5 | |
| # - name: Setup Go | |
| # uses: actions/setup-go@v5 | |
| # with: | |
| # go-version: '1.25' | |
| # - name: Get Cached Server Base Image | |
| # uses: actions/cache@v4 | |
| # id: gremlin-server-test-docker-image | |
| # with: | |
| # path: | | |
| # ./gremlin-server/* | |
| # ~/.m2/repository/org/apache/tinkerpop/* | |
| # key: ${{ github.sha }} | |
| # - name: Load Docker Image | |
| # working-directory: ./gremlin-server | |
| # run: docker load --input gremlin-server.tar | |
| # - name: Build with Maven | |
| # working-directory: . | |
| # run: | | |
| # touch gremlin-go/.glv | |
| # EXCLUDE="${EXCLUDE_MODULES/,-:gremlin-python},$EXCLUDE_FOR_GLV" | |
| # mvn clean install -pl $EXCLUDE -q -DskipTests -Dci | |
| # mvn verify -pl :gremlin-go | |
| # - name: Upload to Codecov | |
| # uses: codecov/codecov-action@v5 | |
| # with: | |
| # working-directory: ./gremlin-go | |
| # - name: Go-Vet | |
| # working-directory: ./gremlin-go | |
| # run: go vet ./... |