File: build.yml

package info (click to toggle)
node-css-tree 3.1.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,184 kB
  • sloc: javascript: 17,452; makefile: 5
file content (92 lines) | stat: -rw-r--r-- 2,908 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
name: Build

on:
    push:
    pull_request:

env:
    PRIMARY_NODEJS_VERSION: 18

jobs:
    lint:
        name: Lint
        runs-on: ubuntu-latest
        steps:
            - uses: actions/checkout@v2
            - name: Setup node ${{ env.PRIMARY_NODEJS_VERSION }}
              uses: actions/setup-node@v2
              with:
                node-version: ${{ env.PRIMARY_NODEJS_VERSION }}
                cache: "npm"
            - run: npm ci
            - run: npm run lint

    test-bundle:
        name: Test bundle
        runs-on: ${{ matrix.os }}
        strategy:
            matrix:
                os: [ubuntu-latest, windows-latest]
        steps:
            - uses: actions/checkout@v2
            - name: Setup node ${{ env.PRIMARY_NODEJS_VERSION }}
              uses: actions/setup-node@v2
              with:
                node-version: ${{ env.PRIMARY_NODEJS_VERSION }}
                cache: "npm"
            - run: npm ci
            - run: npm run bundle-and-test -- -- --reporter min

    unit-tests:
        name: Unit tests
        runs-on: ${{ matrix.os }}

        strategy:
            matrix:
                os: [ubuntu-latest]
                # See supported Node.js release schedule at https://nodejs.org/en/about/releases/
                node_version:
                    - 10
                    - 12.20.0
                    - 14.13.0
                    - 16
                    - 18
                    - 20
                    - 22
                include:
                    - os: windows-latest
                      node: 10
                    - os: windows-latest
                      node: 22

        steps:
            - uses: actions/checkout@v2
            - name: Setup node ${{ matrix.node_version }}
              uses: actions/setup-node@v2
              with:
                node-version: ${{ matrix.node_version }}
                cache: "npm"
            - run: npm ci
            - run: npm run test -- --reporter min
              if: ${{ matrix.node_version != '10' }}
            - run: npm run esm-to-cjs-and-test -- -- --reporter min
            - run: npm run coverage
              if: ${{ matrix.node_version == env.PRIMARY_NODEJS_VERSION }}
            - name: Coveralls parallel
              if: ${{ matrix.node_version == env.PRIMARY_NODEJS_VERSION }}
              uses: coverallsapp/github-action@1.1.3
              with:
                github-token: ${{ secrets.GITHUB_TOKEN }}
                flag-name: node-${{ matrix.node_version }}
                parallel: true

    send-to-coveralls:
        name: Send coverage to Coveralls
        needs: unit-tests
        runs-on: ubuntu-latest
        steps:
            - name: Send coverage to Coveralls
              uses: coverallsapp/github-action@1.1.3
              with:
                github-token: ${{ secrets.GITHUB_TOKEN }}
                parallel-finished: true