Skip to content

[TINKERPOP-2959] Introduce GValue for Improved Parameterization #7550

[TINKERPOP-2959] Introduce GValue for Improved Parameterization

[TINKERPOP-2959] Introduce GValue for Improved Parameterization #7550

Workflow file for this run

name: build-test
on: [push, pull_request]
jobs:
smoke:
name: smoke
timeout-minutes: 10
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
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@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Build with Maven
run: mvn clean install -pl -:gremlin-javascript,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlin-go,-:gremlin-python -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@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Maven
run: mvn clean install -pl -:gremlin-javascript,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlin-go,-:gremlin-python -Dci --batch-mode -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn -Dcoverage
- name: Upload to Codecov
uses: codecov/codecov-action@v4
with:
directory: ./gremlin-tools/gremlin-coverage/target/site
java-jdk8:
name: mvn clean install - jdk8
timeout-minutes: 45
needs: smoke
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK 8
uses: actions/setup-java@v4
with:
java-version: '8'
distribution: 'temurin'
- name: Build with Maven
run: mvn clean install -pl -:gremlin-javascript -Dci --batch-mode -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
gremlin-server-default:
name: gremlin-server default
timeout-minutes: 45
needs: smoke
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Maven
run: |
mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint -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@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Maven
run: |
mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint -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@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
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@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Maven Windows
if: runner.os == 'Windows'
run: |
mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint -q -DskipTests -DskipImageBuild -Dci
- name: Build with Maven Ubuntu
if: runner.os == 'Linux'
run: |
mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint -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@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Maven Windows
if: runner.os == 'Windows'
run: |
mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint -q -DskipTests -DskipImageBuild -Dci
- name: Build with Maven Ubuntu
if: runner.os == 'Linux'
run: |
mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint -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@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Maven
run: |
touch gremlin-python/.glv
mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint -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@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Maven
run: |
mvn clean install -pl -:gremlin-javascript,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint -q -DskipTests -Dci
mvn verify -pl gremlin-driver -DskipIntegrationTests=false
# javascript:
# name: javascript
# timeout-minutes: 15
# needs: cache-gremlin-server-docker-image
# runs-on: ${{ matrix.os }}
# strategy:
# matrix:
# # Windows Disabled until Linux containers are supported on Windows runners: https://github.com/actions/virtual-environments/issues/252
# # os: [ubuntu-latest, windows-latest]
# os: [ubuntu-latest]
# steps:
# - uses: actions/checkout@v4
# - name: Set up JDK 11
# uses: actions/setup-java@v4
# with:
# java-version: '11'
# distribution: 'temurin'
# - name: Get Cached Server Base Image
# if: matrix.os == 'ubuntu-latest'
# uses: actions/cache@v4
# id: gremlin-server-test-docker-image
# with:
# path: |
# ./gremlin-server/*
# ~/.m2/repository/org/apache/tinkerpop/*
# key: ${{ github.sha }}
## - name: Download Server Base Image
## if: matrix.os == 'windows-latest'
## uses: actions/download-artifact@v3
## with:
## name: ${{ github.sha }}
## path: ./gremlin-server
# - name: Load Docker Image
# working-directory: ./gremlin-server
# run: docker load --input gremlin-server.tar
# - name: Build with Maven
# run: |
# mvn clean install -pl -:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests -q -DskipTests -Dci
# mvn verify -pl :gremlin-javascript,:gremlint
python:
name: python
timeout-minutes: 20
needs: cache-gremlin-server-docker-image
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Set up Python 3.x
uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Build with Maven
run: |
touch gremlin-python/.glv
mvn clean install -pl -:gremlin-javascript,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint -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@v4
# - name: Set up JDK11
# uses: actions/setup-java@v4
# 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
# mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-:gremlint -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@v4
- name: Set up JDK11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Maven
run: |
mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests -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@v4
# - name: Setup Go
# uses: actions/setup-go@v5
# with:
# go-version: '1.22'
# - 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
# mvn clean install -pl -:gremlin-python,-:gremlin-javascript,-:gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests -q -DskipTests -Dci
# mvn verify -pl :gremlin-go
# - name: Upload to Codecov
# uses: codecov/codecov-action@v4
# with:
# working-directory: ./gremlin-go
# - name: Go-Vet
# working-directory: ./gremlin-go
# run: go vet ./...