diff --git a/.github/workflows/base.yml b/.github/workflows/base.yml index 85a817aa6..c2d966188 100644 --- a/.github/workflows/base.yml +++ b/.github/workflows/base.yml @@ -15,24 +15,21 @@ on: required: false type: string default: eventstore-ce/eventstoredb-ce - framework: - required: true - type: string - os: - required: true - type: string test: required: true type: string - configuration: - required: true - type: string jobs: test: timeout-minutes: 20 - runs-on: ${{ inputs.os }} - name: EventStore.Client.${{ inputs.test }}/${{ inputs.os }}/${{ inputs.framework }}/${{ inputs.docker-tag }} + strategy: + fail-fast: false + matrix: + framework: [ net6.0, net7.0, net8.0 ] + os: [ ubuntu-latest ] + configuration: [ release ] + runs-on: ${{ matrix.os }} + name: EventStore.Client.${{ inputs.test }} (${{ matrix.os }}, ${{ matrix.framework }}) env: CLOUDSMITH_CICD_USER: ${{ secrets.CLOUDSMITH_CICD_USER }} steps: @@ -58,10 +55,6 @@ jobs: 6.0.x 7.0.x 8.0.x - - name: Compile - shell: bash - run: | - dotnet build --configuration ${{ inputs.configuration }} --framework ${{ inputs.framework }} src/EventStore.Client.${{ inputs.test }} - name: Run Tests shell: bash env: @@ -69,7 +62,7 @@ jobs: ES_DOCKER_REGISTRY: docker.eventstore.com/${{ inputs.docker-image }} run: | sudo ./gencert.sh - dotnet test --configuration ${{ inputs.configuration }} --blame \ + dotnet test --configuration ${{ matrix.configuration }} --blame \ --logger:"GitHubActions;report-warnings=false" --logger:"console;verbosity=normal" \ - --framework ${{ inputs.framework }} \ + --framework ${{ matrix.framework }} \ test/EventStore.Client.${{ inputs.test }}.Tests diff --git a/.github/workflows/ce.yml b/.github/workflows/ce.yml index 8a0bb2e64..f517dd0c4 100644 --- a/.github/workflows/ce.yml +++ b/.github/workflows/ce.yml @@ -17,17 +17,9 @@ jobs: strategy: fail-fast: false matrix: - framework: [ net6.0, net7.0, net8.0 ] - os: [ ubuntu-latest ] test: [ Streams, PersistentSubscriptions, Operations, UserManagement, ProjectionManagement ] - configuration: [ release ] + name: ${{ matrix.test }} with: docker-tag: ${{ inputs.docker-tag }} docker-image: ${{ inputs.docker-image }} - framework: ${{ matrix.framework }} - os: ${{ matrix.os }} test: ${{ matrix.test }} - configuration: ${{ matrix.configuration }} - secrets: - CLOUDSMITH_CICD_USER: ${{ secrets.CLOUDSMITH_CICD_USER }} - CLOUDSMITH_CICD_TOKEN: ${{ secrets.CLOUDSMITH_CICD_TOKEN }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 16e37e13d..0cbcde20f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,4 +1,4 @@ -name: Test CI +name: CI on: pull_request: @@ -9,7 +9,21 @@ on: - v* jobs: - test: - uses: ./.github/workflows/base.yml + ce: + uses: ./.github/workflows/ce.yml + strategy: + fail-fast: false + matrix: + docker-tag: [ ci, lts, previous-lts ] + name: CE (${{ matrix.docker-tag }}) with: - docker-tag: ci + docker-tag: ${{ matrix.docker-tag }} + ee: + uses: ./.github/workflows/ee.yml + strategy: + fail-fast: false + matrix: + docker-tag: [ 24.2.0-jammy ] + name: EE (${{ matrix.docker-tag }}) + with: + docker-tag: ${{ matrix.docker-tag }} diff --git a/.github/workflows/dispatch-ce.yml b/.github/workflows/dispatch-ce.yml index fc21b66d6..0ded02353 100644 --- a/.github/workflows/dispatch-ce.yml +++ b/.github/workflows/dispatch-ce.yml @@ -1,13 +1,13 @@ -name: "Dispatch CE" +name: Dispatch CE on: workflow_dispatch: inputs: - version: - description: "Docker tag version" + docker-tag: + description: "Docker tag" required: true type: string - image: + docker-image: description: "Docker image" required: true type: string @@ -16,5 +16,5 @@ jobs: test: uses: ./.github/workflows/ce.yml with: - docker-tag: ${{ inputs.version }} - docker-image: ${{ inputs.image }} + docker-tag: ${{ inputs.docker-tag }} + docker-image: ${{ inputs.docker-image }} diff --git a/.github/workflows/dispatch-ee.yml b/.github/workflows/dispatch-ee.yml index ceaf6921e..a370ffce5 100644 --- a/.github/workflows/dispatch-ee.yml +++ b/.github/workflows/dispatch-ee.yml @@ -1,13 +1,13 @@ -name: "Dispatch EE" +name: Dispatch EE on: workflow_dispatch: inputs: - version: - description: "Docker tag version" + docker-tag: + description: "Docker tag" required: true type: string - image: + docker-image: description: "Docker image" required: true type: string @@ -16,5 +16,5 @@ jobs: test: uses: ./.github/workflows/ee.yml with: - docker-tag: ${{ inputs.version }} - docker-image: ${{ inputs.image }} + docker-tag: ${{ inputs.docker-tag }} + docker-image: ${{ inputs.docker-image }} diff --git a/.github/workflows/ee.yml b/.github/workflows/ee.yml index e59984a50..bc19708b0 100644 --- a/.github/workflows/ee.yml +++ b/.github/workflows/ee.yml @@ -1,21 +1,16 @@ name: Test EE on: - pull_request: - push: - branches: - - master - tags: - - v* workflow_call: inputs: docker-tag: - required: true + required: false type: string + default: 24.2.0-jammy docker-image: required: false type: string - default: eventstore-ce/eventstoredb-ce + default: eventstore-ee/eventstoredb-commercial jobs: test: @@ -24,17 +19,12 @@ jobs: strategy: fail-fast: false matrix: - framework: [ net6.0, net7.0, net8.0 ] - os: [ ubuntu-latest ] - test: [ Streams, PersistentSubscriptions, Operations, UserManagement, ProjectionManagement, Plugins ] - configuration: [ release ] + test: [ Plugins ] + name: ${{ matrix.test }} with: docker-image: ${{ inputs.docker-image != null && inputs.docker-image || 'eventstore-ee/eventstoredb-commercial' }} docker-tag: ${{ inputs.docker-tag != null && inputs.docker-tag || '24.2.0-jammy' }} - framework: ${{ matrix.framework }} - os: ${{ matrix.os }} test: ${{ matrix.test }} - configuration: ${{ matrix.configuration }} secrets: CLOUDSMITH_CICD_USER: ${{ secrets.CLOUDSMITH_CICD_USER }} CLOUDSMITH_CICD_TOKEN: ${{ secrets.CLOUDSMITH_CICD_TOKEN }} diff --git a/.github/workflows/lts.yml b/.github/workflows/lts.yml deleted file mode 100644 index 4a2523a85..000000000 --- a/.github/workflows/lts.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: Test LTS - -on: - pull_request: - push: - branches: - - master - tags: - - v* - -jobs: - test: - uses: ./.github/workflows/ce.yml - with: - docker-tag: lts diff --git a/.github/workflows/previous-lts.yml b/.github/workflows/previous-lts.yml deleted file mode 100644 index b4a45fa94..000000000 --- a/.github/workflows/previous-lts.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: Test Previous LTS - -on: - pull_request: - push: - branches: - - master - tags: - - v* - -jobs: - test: - uses: ./.github/workflows/base.yml - with: - docker-tag: previous-lts