mirror of
https://github.com/chartjs/Chart.js.git
synced 2024-10-06 04:09:08 +02:00
ci(workflow): add cache to workflows using actions/setup-node (#9757)
* ci(workflow): add 'npm' cache for actions/setup-node in .github/workflows * style(workflows): restore single quotes and remove unnecessary 'null'
This commit is contained in:
parent
6a250de81d
commit
12d5e4c7e7
145
.github/workflows/ci.yml
vendored
145
.github/workflows/ci.yml
vendored
@ -10,7 +10,6 @@ on:
|
||||
- master
|
||||
- "2.9"
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ${{ matrix.os }}
|
||||
@ -24,80 +23,80 @@ jobs:
|
||||
fail-fast: false
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Use Node.js
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: '14'
|
||||
- uses: dorny/paths-filter@v2
|
||||
id: changes
|
||||
with:
|
||||
filters: |
|
||||
docs:
|
||||
- 'docs/**'
|
||||
- 'package.json'
|
||||
- 'tsconfig.json'
|
||||
src:
|
||||
- 'src/**'
|
||||
- 'package.json'
|
||||
test:
|
||||
- 'test/**'
|
||||
- 'karma.conf.js'
|
||||
- 'package.json'
|
||||
types:
|
||||
- 'types/**'
|
||||
- 'package.json'
|
||||
- 'tsconfig.json'
|
||||
- name: Install
|
||||
run: npm ci
|
||||
- name: Build
|
||||
run: npm run build
|
||||
- name: Test
|
||||
if: |
|
||||
steps.changes.outputs.src == 'true' ||
|
||||
steps.changes.outputs.test == 'true'
|
||||
run: |
|
||||
npm run build
|
||||
if [ "${{ runner.os }}" == "Windows" ]; then
|
||||
npm test
|
||||
elif [ "${{ runner.os }}" == "macOS" ]; then
|
||||
npm test --browsers chrome,safari
|
||||
else
|
||||
xvfb-run --auto-servernum npm test
|
||||
fi
|
||||
shell: bash
|
||||
- name: Lint
|
||||
run: npm run lint
|
||||
- name: Package
|
||||
if: steps.changes.outputs.docs == 'true'
|
||||
run: |
|
||||
npm run docs
|
||||
npm pack
|
||||
- name: Coveralls Parallel - Chrome
|
||||
if: steps.changes.outputs.src == 'true'
|
||||
uses: coverallsapp/github-action@master
|
||||
with:
|
||||
github-token: ${{ secrets.github_token }}
|
||||
path-to-lcov: './coverage/chrome/lcov.info'
|
||||
flag-name: ${{ matrix.os }}-chrome
|
||||
parallel: true
|
||||
- name: Coveralls Parallel - Firefox
|
||||
if: steps.changes.outputs.src == 'true'
|
||||
uses: coverallsapp/github-action@master
|
||||
with:
|
||||
github-token: ${{ secrets.github_token }}
|
||||
path-to-lcov: './coverage/firefox/lcov.info'
|
||||
flag-name: ${{ matrix.os }}-firefox
|
||||
parallel: true
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
- name: Use Node.js
|
||||
uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: '14'
|
||||
cache: npm
|
||||
- uses: dorny/paths-filter@v2
|
||||
id: changes
|
||||
with:
|
||||
filters: |
|
||||
docs:
|
||||
- 'docs/**'
|
||||
- 'package.json'
|
||||
- 'tsconfig.json'
|
||||
src:
|
||||
- 'src/**'
|
||||
- 'package.json'
|
||||
test:
|
||||
- 'test/**'
|
||||
- 'karma.conf.js'
|
||||
- 'package.json'
|
||||
types:
|
||||
- 'types/**'
|
||||
- 'package.json'
|
||||
- 'tsconfig.json'
|
||||
- name: Install
|
||||
run: npm ci
|
||||
- name: Build
|
||||
run: npm run build
|
||||
- name: Test
|
||||
if: |
|
||||
steps.changes.outputs.src == 'true' ||
|
||||
steps.changes.outputs.test == 'true'
|
||||
run: |
|
||||
npm run build
|
||||
if [ "${{ runner.os }}" == "Windows" ]; then
|
||||
npm test
|
||||
elif [ "${{ runner.os }}" == "macOS" ]; then
|
||||
npm test --browsers chrome,safari
|
||||
else
|
||||
xvfb-run --auto-servernum npm test
|
||||
fi
|
||||
shell: bash
|
||||
- name: Lint
|
||||
run: npm run lint
|
||||
- name: Package
|
||||
if: steps.changes.outputs.docs == 'true'
|
||||
run: |
|
||||
npm run docs
|
||||
npm pack
|
||||
- name: Coveralls Parallel - Chrome
|
||||
if: steps.changes.outputs.src == 'true'
|
||||
uses: coverallsapp/github-action@master
|
||||
with:
|
||||
github-token: ${{ secrets.github_token }}
|
||||
path-to-lcov: './coverage/chrome/lcov.info'
|
||||
flag-name: ${{ matrix.os }}-chrome
|
||||
parallel: true
|
||||
- name: Coveralls Parallel - Firefox
|
||||
if: steps.changes.outputs.src == 'true'
|
||||
uses: coverallsapp/github-action@master
|
||||
with:
|
||||
github-token: ${{ secrets.github_token }}
|
||||
path-to-lcov: './coverage/firefox/lcov.info'
|
||||
flag-name: ${{ matrix.os }}-firefox
|
||||
parallel: true
|
||||
|
||||
finish:
|
||||
needs: build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Coveralls Finished
|
||||
if: needs.build.outputs.coveralls == 'true'
|
||||
uses: coverallsapp/github-action@master
|
||||
with:
|
||||
github-token: ${{ secrets.github_token }}
|
||||
parallel-finished: true
|
||||
- name: Coveralls Finished
|
||||
if: needs.build.outputs.coveralls == 'true'
|
||||
uses: coverallsapp/github-action@master
|
||||
with:
|
||||
github-token: ${{ secrets.github_token }}
|
||||
parallel-finished: true
|
||||
|
39
.github/workflows/deploy-docs.yml
vendored
39
.github/workflows/deploy-docs.yml
vendored
@ -10,27 +10,28 @@ jobs:
|
||||
correct_repository:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: fail on fork
|
||||
if: github.repository_owner != 'chartjs'
|
||||
run: exit 1
|
||||
- name: fail on fork
|
||||
if: github.repository_owner != 'chartjs'
|
||||
run: exit 1
|
||||
|
||||
build:
|
||||
needs: correct_repository
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Use Node.js
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: '14.x'
|
||||
- name: Package & Deploy Docs
|
||||
run: |
|
||||
npm ci
|
||||
npm run build
|
||||
./scripts/docs-config.sh "master"
|
||||
npm run docs
|
||||
npm pack
|
||||
./scripts/deploy-docs.sh "master"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GH_AUTH_TOKEN }}
|
||||
GH_AUTH_EMAIL: ${{ secrets.GH_AUTH_EMAIL }}
|
||||
- uses: actions/checkout@v2
|
||||
- name: Use Node.js
|
||||
uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: '14.x'
|
||||
cache: npm
|
||||
- name: Package & Deploy Docs
|
||||
run: |
|
||||
npm ci
|
||||
npm run build
|
||||
./scripts/docs-config.sh "master"
|
||||
npm run docs
|
||||
npm pack
|
||||
./scripts/deploy-docs.sh "master"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GH_AUTH_TOKEN }}
|
||||
GH_AUTH_EMAIL: ${{ secrets.GH_AUTH_EMAIL }}
|
||||
|
8
.github/workflows/release.yml
vendored
8
.github/workflows/release.yml
vendored
@ -20,10 +20,11 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-node@v1
|
||||
- uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: '14.x'
|
||||
registry-url: https://registry.npmjs.org/
|
||||
cache: npm
|
||||
- name: Setup and build
|
||||
run: |
|
||||
npm ci
|
||||
@ -59,15 +60,16 @@ jobs:
|
||||
asset_name: ${{ format('chart.js-{0}.tgz', needs.setup.outputs.version) }}
|
||||
asset_content_type: application/gzip
|
||||
release-tag:
|
||||
needs: [setup,release]
|
||||
needs: [setup, release]
|
||||
runs-on: ubuntu-latest
|
||||
if: "!github.event.release.prerelease"
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-node@v1
|
||||
- uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: '14.x'
|
||||
registry-url: https://registry.npmjs.org/
|
||||
cache: npm
|
||||
- name: Setup and build
|
||||
run: |
|
||||
npm ci
|
||||
|
Loading…
Reference in New Issue
Block a user