Welcome to mirror list, hosted at ThFree Co, Russian Federation.

ci.yml « workflows « .github - github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 78c2926afd6ed0b33a2ed922792ae7dd91c9ab69 (plain)
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
name: Node CI

on: [push, pull_request]

jobs:
  lint:
    runs-on: ubuntu-latest
    steps:
      # Checkout the npm/cli repo
      - uses: actions/checkout@v2
      - name: Use Node.js 14.x
        uses: actions/setup-node@v1
        with:
          node-version: 14.x
      - name: Install dependencies
        run: |
          node . install --ignore-scripts --no-audit
          node . rebuild
      - name: Run linting
        run: node . run posttest
        env:
          DEPLOY_VERSION: testing
  
  licenses:
    runs-on: ubuntu-latest
    steps:
      # Checkout the npm/cli repo
      - uses: actions/checkout@v2
      - name: Use Node.js 14.x
        uses: actions/setup-node@v1
        with:
          node-version: 14.x
      - name: Install dependencies
        run: |
          node . install --ignore-scripts --no-audit
          node . rebuild
      - name: Run linting
        run: node . run licenses

  smoke-tests:
    strategy:
      fail-fast: false
      matrix:
        node-version: [10.x, 12.x, 14.x, 16.x]
        platform:
          - os: ubuntu-latest
            shell: bash
          - os: macos-latest
            shell: bash
          - os: windows-latest
            shell: bash
          - os: windows-latest
            shell: powershell

    runs-on: ${{ matrix.platform.os }}
    defaults:
      run:
        shell: ${{ matrix.platform.shell }}

    steps:
      # Checkout the npm/cli repo
    - uses: actions/checkout@v2

      # Installs the specific version of Node.js
    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@v1
      with:
        node-version: ${{ matrix.node-version }}

      # Run the installer script
    - name: Install dependencies
      run: |
        node . install --ignore-scripts --no-audit
        node . rebuild

      # Run the smoke tests
    - name: Run Smoke tests
      run: node . run --ignore-scripts smoke-tests -- --no-check-coverage -t600 -Rbase -c
      env:
        DEPLOY_VERSION: testing

  build:
    strategy:
      fail-fast: false
      matrix:
        node-version: ['10.1', 10.x, '12.1', 12.x, '14.1', 14.x, '16.1', 16.x]
        platform:
          - os: ubuntu-latest
            shell: bash
          - os: macos-latest
            shell: bash
          - os: windows-latest
            shell: bash
          - os: windows-latest
            shell: powershell

    runs-on: ${{ matrix.platform.os }}
    defaults:
      run:
        shell: ${{ matrix.platform.shell }}

    steps:
      # Checkout the npm/cli repo
    - uses: actions/checkout@v2

      # Installs the specific version of Node.js
    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@v1
      with:
        node-version: ${{ matrix.node-version }}

      # Run the installer script
    - name: Install dependencies
      run: |
        node . install --ignore-scripts --no-audit
        node . rebuild

      # Run the tests, but not if we're just gonna do coveralls later anyway
    - name: Run Tap tests
      if: matrix.platform.os != 'ubuntu-latest' || matrix.node-version != '12.x'
      run: node . run --ignore-scripts test -- -t600 -Rbase -c
      env:
        DEPLOY_VERSION: testing

      # Run coverage check
    - name: Run coverage report
      if: matrix.platform.os == 'ubuntu-latest' && matrix.node-version == '12.x'
      # turn off --check-coverage until 100%, so CI failure is relevant
      run: node . run check-coverage -- -t600 --no-check-coverage -Rbase -c
      env:
        DEPLOY_VERSION: testing
        COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_OPTIONAL_TOKEN }}

    # - name: Run sudo tests on Linux
    #   if: matrix.os == 'ubuntu-latest'
    #   run: sudo PATH=$PATH $(which node) . test -- --coverage  --timeout 600