Skip to content

Commit

Permalink
Add GitHub Actions for RuboCop, RSpec, and Release workflows
Browse files Browse the repository at this point in the history
This commit introduces three GitHub Actions workflows: RuboCop for static code analysis, RSpec for running tests, and a Release workflow to categorize changelog entries. These workflows are triggered on specific events to automate code quality checks and streamline the release process.
  • Loading branch information
co-anton-s committed Nov 2, 2024
1 parent 0245d1d commit 92697eb
Show file tree
Hide file tree
Showing 3 changed files with 113 additions and 0 deletions.
29 changes: 29 additions & 0 deletions .github/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
changelog:
categories:
- title: Features 🎉
labels:
- feature
- title: Bug Fixes 🐛
labels:
- fix
- title: Polish 💅🏻
labels:
- polish
- title: Breaking Changes 💥
labels:
- breaking-change
- title: Tests 🏭
labels:
- tests
- title: Dependencies 📦
labels:
- dependencies
- title: Misc 🧰
labels:
- CI
- title: Documentation 📑
labels:
- documentation
- title: Other changes
labels:
- "*"
49 changes: 49 additions & 0 deletions .github/workflows/rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: RuboCop

on:
push:
branches:
- main
pull_request:
# The branches below must be a subset of the branches above
branches:
- main

jobs:
rubocop:
runs-on: ubuntu-latest
strategy:
fail-fast: false
permissions:
# required for all workflows
security-events: write

steps:
- name: Checkout repository
uses: actions/checkout@v4

# If running on a self-hosted runner, check it meets the requirements
# listed at https://github.com/ruby/setup-ruby#using-self-hosted-runners
- name: Set up Ruby
uses: ruby/setup-ruby@f26937343756480a8cb3ae1f623b9c8d89ed6984 # v1.196.0
with:
ruby-version: 3.3

# This step is not necessary if you add the gem to your Gemfile
- name: Install Code Scanning integration
run: bundle add code-scanning-rubocop --version 0.6.1 --skip-install

- name: Install dependencies
run: bundle install

- name: RuboCop run
run: |
bash -c "
bundle exec rubocop --require code_scanning --format CodeScanning::SarifFormatter -o rubocop.sarif
[[ $? -ne 2 ]]
"
- name: Upload Sarif output
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: rubocop.sarif
35 changes: 35 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Test

on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:

# permissions:
# contents: read

jobs:
rspec:
name: Ruby ${{matrix.ruby-version}}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
ruby-version:
- "3.3"

steps:
- uses: actions/checkout@v4

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true

- name: RSpec
run: bundle exec rspec

0 comments on commit 92697eb

Please sign in to comment.