Selaa lähdekoodia

ci: enhance tests distribution

Adds overrides with specific tests suites in our tests
matrix so we can reduce build time significantly.

Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
CrazyMax 2 vuotta sitten
vanhempi
commit
22776f8fdb
2 muutettua tiedostoa jossa 11 lisäystä ja 8 poistoa
  1. 5 4
      .github/workflows/.windows.yml
  2. 6 4
      .github/workflows/test.yml

+ 5 - 4
.github/workflows/.windows.yml

@@ -228,10 +228,11 @@ jobs:
         id: tests
         working-directory: ./integration-cli
         run: |
-          # Distribute integration-cli tests for the matrix in integration-test job.
-          # Also prepend ./... to the matrix. This is a special case to run "Test integration" step exclusively.
-          matrix="$(gotestlist -d ${{ env.ITG_CLI_MATRIX_SIZE }} ./...)"
-          matrix="$(echo "$matrix" | jq -c '. |= ["./..."] + .')"
+          # This step creates a matrix for integration-cli tests. Tests suites
+          # are distributed in integration-test job through a matrix. There is
+          # also an override being added to the matrix like "./..." to run
+          # "Test integration" step exclusively.
+          matrix="$(gotestlist -d ${{ env.ITG_CLI_MATRIX_SIZE }} -o "./..." ./...)"
           echo "matrix=$matrix" >> $GITHUB_OUTPUT
       -
         name: Show matrix

+ 6 - 4
.github/workflows/test.yml

@@ -401,10 +401,12 @@ jobs:
         id: tests
         working-directory: ./integration-cli
         run: |
-          # Distribute integration-cli tests for the matrix in integration-test job.
-          # Also prepend ./... to the matrix. This is a special case to run "Test integration" step exclusively.
-          matrix="$(gotestlist -d ${{ env.ITG_CLI_MATRIX_SIZE }} ./...)"
-          matrix="$(echo "$matrix" | jq -c '. |= ["./..."] + .')"
+          # This step creates a matrix for integration-cli tests. Tests suites
+          # are distributed in integration-cli job through a matrix. There is
+          # also overrides being added to the matrix like "./..." to run
+          # "Test integration" step exclusively and specific tests suites that
+          # take a long time to run.
+          matrix="$(gotestlist -d ${{ env.ITG_CLI_MATRIX_SIZE }} -o "./..." -o "DockerSwarmSuite" -o "DockerNetworkSuite|DockerExternalVolumeSuite" ./...)"
           echo "matrix=$matrix" >> $GITHUB_OUTPUT
       -
         name: Show matrix