Skip to content

Bump actions/checkout from 3 to 4 #7675

Bump actions/checkout from 3 to 4

Bump actions/checkout from 3 to 4 #7675

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@v4
- 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@v5
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@v5
with:
working-directory: ./gremlin-go
- name: Go-Vet
working-directory: ./gremlin-go
run: go vet ./...