mirror of
https://github.com/sudoxnym/habitica.git
synced 2026-04-14 19:56:23 +00:00
246 lines
5.9 KiB
YAML
246 lines
5.9 KiB
YAML
name: Test
|
|
|
|
on: [push, pull_request]
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
lint:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm ci
|
|
env:
|
|
CI: true
|
|
NODE_ENV: test
|
|
- run: npm run lint-no-fix
|
|
apidoc:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm ci
|
|
env:
|
|
CI: true
|
|
NODE_ENV: test
|
|
- run: npm run apidoc
|
|
sanity:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm ci
|
|
env:
|
|
CI: true
|
|
NODE_ENV: test
|
|
- run: npm run test:sanity
|
|
|
|
common:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm ci
|
|
env:
|
|
CI: true
|
|
NODE_ENV: test
|
|
- run: npm run test:common
|
|
content:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm ci
|
|
env:
|
|
CI: true
|
|
NODE_ENV: test
|
|
- run: npm run test:content
|
|
|
|
api-unit:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
mongodb-version: [4.2]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- name: Start MongoDB ${{ matrix.mongodb-version }} Replica Set
|
|
uses: supercharge/mongodb-github-action@1.3.0
|
|
with:
|
|
mongodb-version: ${{ matrix.mongodb-version }}
|
|
mongodb-replica-set: rs
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm ci
|
|
env:
|
|
CI: true
|
|
NODE_ENV: test
|
|
- run: npm run test:api:unit
|
|
env:
|
|
REQUIRES_SERVER=true: true
|
|
api-v3-integration:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
mongodb-version: [4.2]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- name: Start MongoDB ${{ matrix.mongodb-version }} Replica Set
|
|
uses: supercharge/mongodb-github-action@1.3.0
|
|
with:
|
|
mongodb-version: ${{ matrix.mongodb-version }}
|
|
mongodb-replica-set: rs
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm ci
|
|
env:
|
|
CI: true
|
|
NODE_ENV: test
|
|
- run: npm run test:api-v3:integration
|
|
env:
|
|
REQUIRES_SERVER=true: true
|
|
api-v4-integration:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
mongodb-version: [4.2]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- name: Start MongoDB ${{ matrix.mongodb-version }} Replica Set
|
|
uses: supercharge/mongodb-github-action@1.3.0
|
|
with:
|
|
mongodb-version: ${{ matrix.mongodb-version }}
|
|
mongodb-replica-set: rs
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm ci
|
|
env:
|
|
CI: true
|
|
NODE_ENV: test
|
|
- run: npm run test:api-v4:integration
|
|
env:
|
|
REQUIRES_SERVER=true: true
|
|
|
|
client-unit:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm ci
|
|
env:
|
|
CI: true
|
|
NODE_ENV: test
|
|
- run: npm run test:unit
|
|
working-directory: ./website/client
|
|
|
|
production-build:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- run: cp config.json.example config.json
|
|
- name: npm install
|
|
run: |
|
|
npm install
|
|
env:
|
|
CI: true
|
|
NODE_ENV: production
|