forked from pouchdb/pouchdb
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ci: enable coverage; delete irrelevant jobs for faster feedback
- Loading branch information
alxndrsn
committed
Apr 29, 2024
1 parent
f4bfb5f
commit d6a1aa5
Showing
1 changed file
with
1 addition
and
223 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -43,236 +43,14 @@ jobs: | |
- run: sudo apt-get install shellcheck | ||
- run: git ls-files '*.sh' | xargs shellcheck | ||
|
||
# Run the integration, find and mapreduce tests against CouchDB on Node.js. | ||
# This should be run against every version of CouchDB and every version of | ||
# Node.js we support. | ||
|
||
couchdb-nodejs: | ||
needs: lint | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
couchdb: ['2.3', '3.1'] | ||
node: [14, 16] | ||
cmd: | ||
- npm test | ||
- TYPE=find PLUGINS=pouchdb-find ADAPTERS=http npm test | ||
- TYPE=mapreduce ADAPTERS=http npm test | ||
runs-on: ubuntu-latest | ||
env: | ||
CLIENT: node | ||
SERVER: couchdb-master | ||
COUCH_HOST: http://admin:[email protected]:5984 | ||
SKIP_MIGRATION: 1 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- uses: ./.github/actions/install-node-package | ||
with: | ||
node-version: ${{ matrix.node }} | ||
- uses: ./.github/actions/install-couchdb | ||
with: | ||
couchdb-version: ${{ matrix.couchdb }} | ||
- uses: ./.github/actions/build-pouchdb | ||
- id: test | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: First retry | ||
id: retry | ||
if: steps.test.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: Second retry | ||
if: steps.retry.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
|
||
# Run the integration, find and mapreduce tests against CouchDB in the | ||
# browser. This should be run against every version of CouchDB we support and | ||
# every target browser. | ||
|
||
couchdb-browser: | ||
needs: lint | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
couchdb: ['2.3','3.1'] | ||
client: ['firefox', 'chromium', 'webkit'] | ||
cmd: | ||
- npm test | ||
- TYPE=find PLUGINS=pouchdb-find ADAPTERS=http npm test | ||
- TYPE=mapreduce ADAPTERS=http npm test | ||
runs-on: ubuntu-latest | ||
env: | ||
USE_MINIFIED: 1 | ||
CLIENT: ${{ matrix.client }} | ||
SERVER: couchdb-master | ||
COUCH_HOST: http://admin:[email protected]:5984 | ||
SKIP_MIGRATION: 1 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- uses: ./.github/actions/install-node-package | ||
with: | ||
node-version: ${{ env.NODE_VERSION }} | ||
- uses: ./.github/actions/install-playwright | ||
- uses: ./.github/actions/install-couchdb | ||
with: | ||
couchdb-version: ${{ matrix.couchdb }} | ||
- uses: ./.github/actions/build-pouchdb | ||
- id: test | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: First retry | ||
id: retry | ||
if: steps.test.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: Second retry | ||
if: steps.retry.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
|
||
# Run the integration, find and mapreduce tests against all the Node.js | ||
# PouchDB adapters. This should be run for every adapter on every version of | ||
# Node.js we support. | ||
|
||
nodejs-adapter: | ||
needs: lint | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
node: [14, 16] | ||
adapter: ['leveldb', 'memory'] | ||
cmd: | ||
- npm test | ||
- TYPE=find PLUGINS=pouchdb-find npm test | ||
- TYPE=mapreduce npm test | ||
runs-on: ubuntu-latest | ||
env: | ||
CLIENT: node | ||
ADAPTERS: ${{ matrix.adapter }} | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- uses: ./.github/actions/install-node-package | ||
with: | ||
node-version: ${{ matrix.node }} | ||
- uses: ./.github/actions/build-pouchdb | ||
- id: test | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: First retry | ||
id: retry | ||
if: steps.test.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: Second retry | ||
if: steps.retry.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
|
||
# Run the integration, find and mapreduce tests against all the browser-based | ||
# adapters. PouchDB adapters. This should be run for every adapter on every | ||
# target browser. | ||
|
||
browser-adapter: | ||
needs: lint | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
client: ['firefox', 'chromium', 'webkit'] | ||
adapter: ['idb', 'indexeddb', 'memory'] | ||
cmd: | ||
- npm test | ||
- TYPE=find PLUGINS=pouchdb-find npm test | ||
- TYPE=mapreduce npm test | ||
runs-on: ubuntu-latest | ||
env: | ||
USE_MINIFIED: 1 | ||
CLIENT: ${{ matrix.client }} | ||
ADAPTERS: ${{ matrix.adapter }} | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- uses: ./.github/actions/install-node-package | ||
with: | ||
node-version: ${{ env.NODE_VERSION }} | ||
- uses: ./.github/actions/install-playwright | ||
- uses: ./.github/actions/build-pouchdb | ||
- id: test | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: First retry | ||
id: retry | ||
if: steps.test.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: Second retry | ||
if: steps.retry.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
|
||
# Run the integration, find and mapreduce tests using pouchdb-server as the | ||
# remote adapter. This checks that pouchdb-server works with the current | ||
# PouchDB source tree. We run this on Node.js and on every target browser. | ||
# Running against different versions of Node.js might require splitting this | ||
# out into a distinct job. | ||
|
||
pouchdb-server: | ||
needs: lint | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
client: ['node', 'firefox', 'chromium', 'webkit'] | ||
cmd: | ||
- npm test | ||
- TYPE=find PLUGINS=pouchdb-find ADAPTERS=http npm test | ||
- TYPE=mapreduce ADAPTERS=http npm test | ||
runs-on: ubuntu-latest | ||
env: | ||
CLIENT: ${{ matrix.client }} | ||
SERVER: pouchdb-server | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- uses: ./.github/actions/install-node-package | ||
with: | ||
node-version: ${{ env.NODE_VERSION }} | ||
- if: ${{ matrix.client != 'node' }} | ||
uses: ./.github/actions/install-playwright | ||
- uses: ./.github/actions/build-pouchdb | ||
- id: test | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: First retry | ||
id: retry | ||
if: steps.test.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
continue-on-error: true | ||
- name: Second retry | ||
if: steps.retry.outcome == 'failure' | ||
run: ${{ matrix.cmd }} | ||
|
||
# Run all the other testing tasks -- unit tests, and so on. These should be | ||
# run on every version of Node.js that we support. | ||
|
||
nodejs: | ||
needs: lint | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
node: [14, 16] | ||
cmd: | ||
- CLIENT=firefox npm run test-webpack | ||
- AUTO_COMPACTION=true npm test | ||
- PERF=1 npm test | ||
- npm run test-unit | ||
- npm run test-component | ||
- npm run test-fuzzy | ||
# - SERVER=pouchdb-server POUCHDB_SERVER_FLAGS=--in-memory PLUGINS=pouchdb-find npm run report-coverage | ||
- npm run verify-build | ||
- SERVER=pouchdb-server POUCHDB_SERVER_FLAGS=--in-memory PLUGINS=pouchdb-find npm run report-coverage | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
|