Bump ruby/setup-ruby from 1.212.0 to 1.215.0 #1287
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This file is part of the setup-specmatic. | |
# | |
# Copyright (c) 2023 airSlate, Inc. | |
# | |
# For the full copyright and license information, please view | |
# the LICENSE file that was distributed with this source code. | |
# This workflow helps ensure that the code of the action we're going to deploy: | |
# 1. Is well-formatted | |
# 2. Is linted | |
# 3. Successfully builds | |
# 4. Passes unit-tests | |
# Additionally node packages used by the action can be audited. | |
name: Basic validation | |
on: | |
push: | |
branches-ignore: | |
# These should always correspond to pull requests, so ignore them for | |
# the push trigger and let them be triggered by the pull_request | |
# trigger, avoiding running the workflow twice. This is a minor | |
# optimization so there's no need to ensure this is comprehensive. | |
- 'dependabot/**' | |
pull_request: | |
branches: | |
- main | |
jobs: | |
basic-validation: | |
name: Basic validation | |
runs-on: ${{ matrix.os }} | |
# The maximum number of minutes to let a workflow run | |
# before GitHub automatically cancels it. Default: 360 | |
timeout-minutes: 30 | |
strategy: | |
# When set to true, GitHub cancels | |
# all in-progress jobs if any matrix job fails. | |
fail-fast: false | |
matrix: | |
os: | |
- ubuntu-latest | |
- macos-latest | |
- windows-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 5 | |
- name: Setup Node.js 18.x | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18.x | |
cache: npm | |
- name: Setup npm cache | |
uses: actions/cache@v4 | |
with: | |
path: ~/.npm | |
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-node- | |
- name: Install dependencies | |
run: npm ci --ignore-scripts | |
- name: Run prettier | |
run: npm run format-check | |
- name: Run linter | |
run: npm run lint | |
- name: Rebuild the dist directory | |
run: npm run build | |
- name: Run unit tests | |
run: npm test | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v5 | |
with: | |
fail_ci_if_error: false | |
verbose: true | |
name: codecov-umbrella | |
flags: unittests | |
env_vars: OS | |
- name: Audit packages | |
run: npm audit --audit-level=high | |
- name: Success Reporting | |
if: success() | |
run: git log --format=fuller -5 |