Skip to content

Fixes #1031: partially revert change #1005, making default Projection go back to "include all" #2955

Fixes #1031: partially revert change #1005, making default Projection go back to "include all"

Fixes #1031: partially revert change #1005, making default Projection go back to "include all" #2955

# @author Ivan Senic
name: Continuous Integration
# runs on
# * pushes and pull requests on the "main" (pull request only for specific paths)
# * manual trigger
on:
push:
branches: [ "main"]
pull_request:
branches: [ "main", "feature/*" ]
paths:
- 'src/**'
- 'pom.xml'
- '.github/workflows/continuous-integration.yaml'
workflow_dispatch:
# cancel same workflows in progress for pull request branches
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
# global env vars, available in all jobs and steps
env:
MAVEN_OPTS: '-Xmx4g'
# Jobs structure:
#
# 1. Runs unit tests
# 2. Then 2 jobs in parallel
# a) Integration tests with docker image
# b) Integration tests with native docker image
jobs:
# runs unit tests
build:
name: Unit tests
runs-on: ubuntu-latest
# max run time 12 minutes
timeout-minutes: 12
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'
cache: maven
- name: Build & Test
run: |
./mvnw -B -ntp clean test
# runs int tests
int-tests:
name: Integration tests
needs: [ build ]
runs-on: ubuntu-latest
# max run time 40 minutes
timeout-minutes: 40
strategy:
# let all tests run, can find multiple failures in different setup
fail-fast: false
# matrix props:
matrix:
type: [ docker, native, dse-it ]
include:
- type: docker
profile: ''
- type: dse-it
profile: '-Pdse-it'
exclude:
- type: native
#profile: '-Pnative'
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'
cache: maven
# login to ECR to we can pull coord image from there
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1-node16
with:
aws-access-key-id: ${{ secrets.ECR_ACCESS_KEY }}
aws-secret-access-key: ${{ secrets.ECR_SECRET_KEY }}
aws-region: us-east-1
- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1
with:
mask-password: 'true'
# run the int tests
- name: Integration Test
env:
COORD_IMAGE: ${{ secrets.ECR_REPOSITORY }}/stargateio/coordinator-dse-next
run: |
./mvnw -B -ntp clean verify -DskipUnitTests -Dquarkus.container-image.build=true -Dquarkus.container-image.tag=${{ github.sha }} -Dstargate.int-test.coordinator.image=$COORD_IMAGE ${{ matrix.profile }}