Skip to content

ci(action): update ruby/setup-ruby action to v1.320.0 #913

ci(action): update ruby/setup-ruby action to v1.320.0

ci(action): update ruby/setup-ruby action to v1.320.0 #913

Workflow file for this run

name: CI
permissions:
contents: read
on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:
inputs:
DESCOPE_LOG_LEVEL:
description: "Descope Log Level"
default: "info"
env:
DESCOPE_LOG_LEVEL: ${{ github.event.inputs.DESCOPE_LOG_LEVEL || 'info' }}
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
permissions:
contents: read
strategy:
fail-fast: false
matrix:
# Run unit tests in parallel across 4 workers
# NOTE: ci_node_total and ci_node_index must be kept in sync
ci_node_total: [4]
ci_node_index: [0, 1, 2, 3]
steps:
- name: Checkout Code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: ruby/setup-ruby@a30dfa457ad68707b8b910ac3a244714b61c0626 # v1.320.0
with:
bundler-cache: true # Cache bundle based on Gemfile.lock
- name: Run RSpec Unit Tests (Parallel)
run: bundle exec parallel_rspec spec/lib.descope -n ${{ matrix.ci_node_total }} --only-group ${{ matrix.ci_node_index }}
integration-tests:
name: Integration Tests
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout Code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: ruby/setup-ruby@a30dfa457ad68707b8b910ac3a244714b61c0626 # v1.320.0
with:
bundler-cache: true # Cache bundle based on Gemfile.lock
- name: Run Auth Integration Tests
env:
DESCOPE_MANAGEMENT_KEY: ${{ secrets.DESCOPE_MANAGEMENT_KEY }}
DESCOPE_PROJECT_ID: ${{ secrets.DESCOPE_PROJECT_ID }}
run: bundle exec rspec spec/integration/lib.descope/api/v1/auth
- name: Run Management Integration Tests (excluding global state tests)
env:
DESCOPE_MANAGEMENT_KEY: ${{ secrets.DESCOPE_MANAGEMENT_KEY }}
DESCOPE_PROJECT_ID: ${{ secrets.DESCOPE_PROJECT_ID }}
run: |
bundle exec rspec spec/integration/lib.descope/api/v1/management \
--exclude-pattern "spec/integration/lib.descope/api/v1/management/project_spec.rb" \
--exclude-pattern "spec/integration/lib.descope/api/v1/management/authz_spec.rb"
- name: Run Global State Integration Tests (project & authz)
env:
DESCOPE_MANAGEMENT_KEY: ${{ secrets.DESCOPE_MANAGEMENT_KEY }}
DESCOPE_PROJECT_ID: ${{ secrets.DESCOPE_PROJECT_ID }}
AUTHZ_FULL_TEST: "true"
run: |
bundle exec rspec spec/integration/lib.descope/api/v1/management/project_spec.rb \
spec/integration/lib.descope/api/v1/management/authz_spec.rb