X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=.github%2Fworkflows%2Ftest.yml;h=f0bd3ba3734b9ec6eaea05c27a873066e706cbca;hb=000ca2a898a36214bbf8f787fef4af4cf5ad3c8d;hp=6b9119e2a84a6c1655fcca99b1cf295124785382;hpb=7abb5c5da1ed7c6945e81b9e3da0a14f623f69ea;p=github%2FChocobozzz%2FPeerTube.git diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6b9119e2a..f0bd3ba37 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,6 +1,14 @@ name: Test Suite -on: [push, pull_request] +on: + push: + branches: + - develop + - master + pull_request: + types: [synchronize, opened] + schedule: + - cron: '0 3 * * 1-5' jobs: @@ -21,15 +29,19 @@ jobs: POSTGRES_USER: peertube POSTGRES_HOST_AUTH_METHOD: trust + ldap: + image: rroemhild/test-openldap + ports: + - 389:389 + strategy: fail-fast: false matrix: - test_suite: [ misc, api-1, api-2, api-3, api-4, cli, lint ] + test_suite: [ misc, api-1, api-2, api-3, api-4, cli, lint, external-plugins ] env: PGUSER: peertube PGHOST: localhost - DISABLE_HTTP_IMPORT_TESTS: true NODE_PENDING_JOB_WAIT: 2000 steps: @@ -54,19 +66,33 @@ jobs: with: path: | **/node_modules - ~/fixtures key: ${{ runner.OS }}-node-${{ hashFiles('**/yarn.lock') }} restore-keys: | ${{ runner.OS }}-node- ${{ runner.OS }}- + - name: Cache fixtures + uses: actions/cache@v2 + with: + path: | + fixtures + key: ${{ runner.OS }}-fixtures-${{ matrix.test_suite }}-${{ hashFiles('fixtures/*') }} + restore-keys: | + ${{ runner.OS }}-fixtures-${{ matrix.test_suite }}- + ${{ runner.OS }}-fixtures- + ${{ runner.OS }}- + - name: Install dependencies run: yarn install --frozen-lockfile - - name: Test - run: echo $PATH + - name: Set env test variable (schedule) + if: github.event_name != 'schedule' + run: | + echo "::set-env name=DISABLE_HTTP_IMPORT_TESTS::true" - name: Run Test + # external-plugins tests only run on schedule + if: github.event_name == 'schedule' || matrix.test_suite != 'external-plugins' run: NODE_PENDING_JOB_WAIT=2000 npm run ci -- ${{ matrix.test_suite }} - name: Upload logs