Many Actions complain that an old Node20 code is used. Update the actions to use newer versions. https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
69 lines
2.1 KiB
YAML
69 lines
2.1 KiB
YAML
name: "CI - Rubocop"
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
# NOTE: GitHub Actions do not allow using YAML references, the same path
|
|
# list is used below for the pull request event. Keep both lists in sync!!
|
|
|
|
# this file as well
|
|
- .github/workflows/ci-rubocop.yml
|
|
# Rubocop configuration
|
|
- service/.rubocop.yml
|
|
# all Ruby files
|
|
- service/Gemfile
|
|
- service/bin/**
|
|
- service/**.rb
|
|
|
|
pull_request:
|
|
paths:
|
|
# NOTE: GitHub Actions do not allow using YAML references, the same path
|
|
# list is used above for the push event. Keep both lists in sync!!
|
|
|
|
# this file as well
|
|
- .github/workflows/ci-rubocop.yml
|
|
# Rubocop configuration
|
|
- service/.rubocop.yml
|
|
# all Ruby files
|
|
- service/Gemfile
|
|
- service/bin/**
|
|
- service/**.rb
|
|
|
|
jobs:
|
|
rubocop:
|
|
runs-on: ubuntu-latest
|
|
|
|
defaults:
|
|
run:
|
|
working-directory: ./service
|
|
|
|
steps:
|
|
|
|
- name: Git Checkout
|
|
uses: actions/checkout@v6
|
|
|
|
# cache the locally installed Ruby gems for the next invocation to speed up the run,
|
|
# installing Rubocop from scratch takes about 1 minute, the cache is restored in about 2 seconds
|
|
# https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/caching-dependencies-to-speed-up-workflows#using-the-cache-action
|
|
- name: Rubygem cache
|
|
id: rubygem-cache
|
|
uses: actions/cache@v5
|
|
with:
|
|
path: |
|
|
~/.local/share/gem
|
|
key: ${{ runner.os }}-rubocop-${{ hashFiles('.github/workflows/ci-rubocop.yml') }}
|
|
|
|
- name: Install Rubocop
|
|
# install Rubocop if it was not restored from the cache
|
|
if: steps.rubygem-cache.outputs.cache-hit != 'true'
|
|
run: gem install --user-install rubocop:1.24.1
|
|
|
|
- name: Modify Rubocop config
|
|
# read the shared configuration directly from the GitHub repository
|
|
run: sed -i -e "s#/usr/share/YaST2/data/devtools/data/#https://raw.githubusercontent.com/yast/yast-devtools/refs/heads/master/ytools/y2tool/#" .rubocop.yml
|
|
|
|
- name: Rubocop
|
|
run: ~/.local/share/gem/ruby/*/bin/rubocop
|