Skip to content

E2E

E2E #4980

Workflow file for this run

name: E2E
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 */12 * * *' # Every 12 hours
workflow_dispatch: # To start from UI
inputs:
restateImage:
description: 'restate image'
required: false
default: 'ghcr.io/restatedev/restate:main'
type: string
jobs:
build:
# prevent e2e running on forks
if: github.repository_owner == 'restatedev'
runs-on: ubuntu-latest
timeout-minutes: 30
permissions:
contents: read
issues: read
checks: write
pull-requests: write
actions: read
steps:
- uses: actions/checkout@v4
with:
repository: restatedev/e2e
path: e2e
- name: "Check license headers"
run: "./check-license-headers"
working-directory: e2e
# Setup Java
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
# Run tests
- name: Run E2E tests
env:
E2E_IMAGE_PULL_POLICY: always
E2E_VERIFICATION_SEED: ${{ github.run_id }}
RESTATE_CONTAINER_IMAGE: ${{ inputs.restateImage }}
working-directory: e2e
run: ./gradlew --continue -Djib.console=plain check
# Upload container logs
- uses: actions/upload-artifact@v4
if: always() # Make sure this is run even when test fails
with:
name: container-logs
path: |
e2e/tests/build/test-results/*/container-logs/**
e2e/tests/build/reports/tests/**
e2e/tests/build/test-results/*/*.xml
- name: Publish Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
files: |
e2e/tests/build/test-results/*/*.xml