Skip to content

Docs: add faq

Docs: add faq #4591

Workflow file for this run

name: CI
on:
push:
branches:
- master
- v3
paths-ignore:
- .env.sample
- .gitignore
- .replit
- config.json.sample
- LICENSE
- README.md
- .github/**
- .vscode/**
pull_request:
workflow_dispatch:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20.x'
- name: Get npm cache directory
id: npm-cache
run: |
echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT
- name: Check npm cache
uses: actions/cache/restore@v4
with:
path: |
${{ steps.npm-cache.outputs.dir }}
key: npm-20.x-${{ hashFiles('package-lock.json') }}
restore-keys: |
npm-20.x-
npm-
- name: Install dependencies
run: npm ci
- name: List dependencies
run: npm list --all
continue-on-error: true
- name: Lint
run: npm run lint -- --max-warnings 0
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20.x'
- name: Get npm cache directory
id: npm-cache
run: |
echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT
- name: Check npm cache
uses: actions/cache@v4
with:
path: |
${{ steps.npm-cache.outputs.dir }}
key: npm-20.x-${{ hashFiles('package-lock.json') }}
restore-keys: |
npm-20.x-
npm-
- name: Install dependencies
run: npm ci
- name: Build
run: npm run build
test:
runs-on: ubuntu-latest
needs:
- build
strategy:
matrix:
node-version:
- '16.x'
- '18.x'
- '20.x'
steps:
- uses: actions/checkout@v4
- name: Setup config for test
run: cp util/config-for-test.json config.json
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Get npm cache directory
id: npm-cache
run: |
echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT
- name: Check npm cache
uses: actions/cache@v4
with:
path: |
${{ steps.npm-cache.outputs.dir }}
key: npm-${{ matrix.node-version }}-${{ hashFiles('package-lock.json') }}
restore-keys: |
npm-${{ matrix.node-version }}-
npm-
- name: Install dependencies
run: npm ci
- name: Build
run: npm run build
- name: Test
run: npm test
env:
CI: 'true'
- name: Test to load scripts to Node.js
run: node util/exec -r ./util/testLoad -e 'process.exit()'
docs:
runs-on: ubuntu-latest
needs:
- build
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20.x'
- name: Get npm cache directory
id: npm-cache
run: |
echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT
- name: Check npm cache
uses: actions/cache/restore@v4
with:
path: |
${{ steps.npm-cache.outputs.dir }}
key: npm-20.x-${{ hashFiles('package-lock.json') }}
restore-keys: |
npm-20.x-
npm-
- name: Install dependencies
run: npm ci
- name: Setup config for test
run: cp util/config-for-test.json config.json
- name: Build document
run: |
npm run build
npm run generatecommandlist
- name: Check if there are changes
run: |
git add .
git diff --staged -w --exit-code
- name: Build documentation site
if: ${{ github.event_name != 'pull_request' }}
working-directory: "docs"
run: |
npm ci
npm run build
success-all-test:
runs-on: ubuntu-latest
if: always()
needs:
- lint
- test
- docs
steps:
- uses: im-open/[email protected]
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Check failure
if: env.WORKFLOW_CONCLUSION == 'failure'
run: exit 1
- name: Success
run: echo "All done"
if: ${{ success() }}