# Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. name: Node CI on: push: branches-ignore: - 'dependabot/**' pull_request: branches: - '*' jobs: test: name: NodeJS ${{ matrix.node-version }} on ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: matrix: node-version: [16.x, 18.x, 20.x, 22.x] os: [ubuntu-latest, windows-latest, macos-latest] steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} - uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' - name: Environment Information run: | node --version npm --version gradle --version # "bin/templates/platform_www/cordova.js" is ignored because it is a generated file. # It contains mixed content from the npm package "cordova-js" and "./cordova-js-src". # The report might not be resolvable because of the external package. # If the report is related to this repository, it would be detected when scanning "./cordova-js-src". - uses: github/codeql-action/init@v3 with: languages: javascript, java-kotlin queries: security-and-quality config: | paths-ignore: - coverage - node_modules - templates/project/assets/www/cordova.js - test/androidx/app/src/main/assets/www/cordova.js - name: npm install and test run: | npm i npm t env: CI: true - uses: github/codeql-action/analyze@v3 - uses: codecov/codecov-action@v4 if: success() with: name: ${{ runner.os }} node.js ${{ matrix.node-version }} token: ${{ secrets.CORDOVA_CODECOV_TOKEN }} fail_ci_if_error: false