This action sets up a ruby environment for versions which are installed on the Actions Virtual Environments.
Virtual environments contain only one Ruby version within a 'major.minor' release, and are updated with new releases. Hence, a workflow should only be bound to minor versions.
Note that a ruby-version: of 2.6 or 2.6.x are equivalent.
Supports
2.4,2.5,2.6, and2.7.
See action.yml
Basic:
steps: - uses: actions/checkout@v2 - uses: actions/setup-ruby@v1 with: ruby-version: '2.6' # Version range or exact version of a Ruby version to use, using semvers version range syntax. - run: ruby hello.rb
Matrix Testing:
jobs: build: runs-on: ubuntu-16.04 strategy: matrix: ruby: [ '2.5', '2.6' ] name: Ruby ${{ matrix.ruby }} sample steps: - uses: actions/checkout@v2 - uses: actions/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} - run: ruby hello.rb
Ruby on Rails Testing:
name: Rails Unit Tests on: [push, pull_request] jobs: build: runs-on: ubuntu-latest services: db: image: postgres:11 ports: ['5432:5432'] options: >- --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 steps: - uses: actions/checkout@v2 - name: Set up Ruby 2.6 uses: actions/setup-ruby@v1 with: ruby-version: 2.6 - name: Build and test with Rake env: PGHOST: 127.0.0.1 PGUSER: postgres RAILS_ENV: test run: | sudo apt-get -yqq install libpq-dev gem install bundler bundle install --jobs 4 --retry 3 bundle exec rails db:create bundle exec rails db:migrate bundle exec rails test
See actions/cache and the Ruby Gem cache example.
The scripts and documentation in this project are released under the MIT License
Contributions are welcome! See Contributor's Guide
👋 Be nice. See our code of conduct