Skip to content

Commit

Permalink
Test on Ruby 3
Browse files Browse the repository at this point in the history
  • Loading branch information
ofedoren committed Jan 15, 2024
1 parent 279fa50 commit 99a0c2a
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 81 deletions.
102 changes: 23 additions & 79 deletions .github/workflows/ruby_tests.yml
Original file line number Diff line number Diff line change
@@ -1,79 +1,23 @@
name: Ruby Testing
on:
pull_request:
env:
BUNDLE_WITHOUT: journald:development:console:libvirt
RAILS_ENV: test
DATABASE_URL: postgresql://postgres:@localhost/test
DATABASE_CLEANER_ALLOW_REMOTE_DATABASE_URL: true
jobs:
test_ruby:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:12.1
ports: ['5432:5432']
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
strategy:
fail-fast: false
matrix:
foreman-core-branch: [develop]
foreman-ansible-branch: [master]
foreman-rex-branch: [master]
foreman-puppet-branch: [master]
ruby-version: [2.7]
steps:
- name: Install build packages
run: |
sudo apt-get update
sudo apt-get install build-essential libcurl4-openssl-dev zlib1g-dev libpq-dev
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true
- uses: actions/checkout@v2
with:
repository: theforeman/foreman
ref: ${{ matrix.foreman-core-branch }}
- uses: actions/checkout@v2
with:
path: foreman_openscap
- name: Run rubocop for OpenSCAP
run: |
bundle install
bundle exec rubocop
working-directory: foreman_openscap
- uses: actions/checkout@v2
with:
repository: theforeman/foreman_ansible
ref: ${{ matrix.foreman-ansible-branch }}
path: foreman_ansible
- uses: actions/checkout@v2
with:
repository: theforeman/foreman_remote_execution
ref: ${{ matrix.foreman-rex-branch }}
path: foreman_remote_execution
- uses: actions/checkout@v2
with:
repository: theforeman/foreman_puppet
ref: ${{ matrix.foreman-puppet-branch }}
path: foreman_puppet
- name: Setup Bundler
run: |
echo "gem 'foreman_openscap', path: './foreman_openscap'" > bundler.d/foreman_openscap.local.rb
echo "gem 'foreman_ansible', path: './foreman_ansible'" > bundler.d/foreman_ansible.local.rb
echo "gem 'foreman_remote_execution', path: './foreman_remote_execution'" > bundler.d/foreman_remote_execution.local.rb
echo "gem 'foreman_puppet', path: './foreman_puppet'" > bundler.d/foreman_puppet.local.rb
- name: Bundle install
run: |
bundle install
- name: Run migrations
run: |
bundle exec rake db:create
bundle exec rake db:migrate
- name: Run plugin tests
run: |
bundle exec rake test:foreman_openscap
- name: Run selected core tests
run: bundle exec rake test:foreman_openscap_extensions
---
name: Ruby Testing

on: pull_request

concurrency:
group: ${{ github.head_ref }}
cancel-in-progress: true

jobs:
rubocop:
name: Rubocop
uses: theforeman/actions/.github/workflows/rubocop.yml@v0

test_ruby:
name: Ruby
needs: rubocop
uses: theforeman/actions/.github/workflows/foreman_plugin.yml@v0
with:
plugin: foreman_openscap
# https://github.com/theforeman/foreman/pull/9989
foreman_repository: ofedoren/foreman
foreman_version: foreman-on-ruby-3-letsgooo
1 change: 1 addition & 0 deletions gemfile.d/foreman_ansible.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
gem 'foreman_ansible', github: 'theforeman/foreman_ansible'
2 changes: 0 additions & 2 deletions gemfile.d/foreman_openscap.rb

This file was deleted.

1 change: 1 addition & 0 deletions gemfile.d/foreman_puppet.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
gem 'foreman_puppet', github: 'theforeman/foreman_puppet'
1 change: 1 addition & 0 deletions gemfile.d/foreman_remote_execution.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
gem 'foreman_remote_execution', github: 'theforeman/foreman_remote_execution'
6 changes: 6 additions & 0 deletions lib/tasks/foreman_openscap_tasks.rake
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,12 @@ namespace :test do
test_dir = File.join(File.dirname(__FILE__), '../..', 'test')
t.libs << ["test", test_dir]
t.pattern = "#{test_dir}/**/*_test.rb"
t.test_files = [
Rails.root.join('test/unit/foreman/access_permissions_test.rb'),
Rails.root.join('test/controllers/api/v2/hosts_controller_test.rb'),
Rails.root.join('test/controllers/api/v2/hostgroups_controller_test.rb'),
Rails.root.join("test/models/hosts/*_test.rb"),
]
t.verbose = true
t.warning = false
end
Expand Down

0 comments on commit 99a0c2a

Please sign in to comment.