diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml deleted file mode 100644 index c62349a0ef..0000000000 --- a/.github/workflows/checks.yml +++ /dev/null @@ -1,34 +0,0 @@ ---- -name: Checks - -on: - push: - branches: [main] - pull_request: - branches: [main] - -permissions: - contents: read - -jobs: - rake_checks: - name: AIO Package Rake Checks - runs-on: ubuntu-24.04 - steps: - # needs fetch-depth because the packaging dem reads old git tags - - name: Checkout current PR - uses: actions/checkout@v5 - with: - fetch-depth: 0 - - name: Install Ruby version 3.3 - uses: ruby/setup-ruby@v1 - with: - ruby-version: 3.3 - bundler-cache: true - - name: Validate code - run: | - cd packaging - bundle exec rake rubocop - bundle exec rake -T | grep vox:build - bundle exec rake -T | grep vox:promote - bundle exec rake -T | grep vox:upload diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index fb081b5a4d..0e4bc2f9ce 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -63,7 +63,12 @@ jobs: bundler-cache: true - name: Output Ruby Environment run: bundle env - + - name: Build gem for all platforms + run: bundle exec rake pl_ci:gem_build + # Windows tests fail if the gem is in the filesystem + - name: Cleanup builds + if: runner.os == 'Windows' + run: Remove-Item -Path *.gem - name: Run tests on Windows if: runner.os == 'Windows' run: | @@ -85,7 +90,7 @@ jobs: ruby -ropenssl -e 'puts "OpenSSL Version - #{OpenSSL::OPENSSL_VERSION}"; puts "OpenSSL Library Version - #{OpenSSL::OPENSSL_LIBRARY_VERSION}"' # Run tests - bundle exec rake parallel:spec[2] + bundle exec rake parallel:spec - name: Run tests on Linux if: runner.os == 'Linux' @@ -102,11 +107,34 @@ jobs: bundle exec rake parallel:spec + rake_checks: + name: AIO Package Rake Checks + runs-on: ubuntu-24.04 + steps: + # needs fetch-depth because the packaging dem reads old git tags + - name: Checkout current PR + uses: actions/checkout@v5 + with: + fetch-depth: 0 + - name: Install Ruby version 3.3 + uses: ruby/setup-ruby@v1 + with: + ruby-version: 3.3 + bundler-cache: true + - name: Validate code + run: | + bundle exec rake rubocop + bundle exec rake -T | grep vox:build + bundle exec rake -T | grep vox:promote + bundle exec rake -T | grep vox:upload + working-directory: packaging + tests: if: always() needs: - checks - rspec_tests + - rake_checks runs-on: ubuntu-24.04 name: Test suite steps: diff --git a/Rakefile b/Rakefile index d0f85faf68..78ac84d47a 100644 --- a/Rakefile +++ b/Rakefile @@ -61,10 +61,10 @@ namespace :pl_ci do task :gem_build, [:gemspec] do |t, args| args.with_defaults(gemspec: 'openvox.gemspec') stdout, stderr, status = Open3.capture3(<<~END) - gem build #{args.gemspec} --platform x86-mingw32 && \ - gem build #{args.gemspec} --platform x64-mingw32 && \ - gem build #{args.gemspec} --platform universal-darwin && \ - gem build #{args.gemspec} + gem build #{args.gemspec} --verbose --strict --platform x86-mingw32 && \ + gem build #{args.gemspec} --verbose --strict --platform x64-mingw32 && \ + gem build #{args.gemspec} --verbose --strict --platform universal-darwin && \ + gem build #{args.gemspec} --verbose --strict END if !status.exitstatus.zero? puts "Error building #{args.gemspec}\n#{stdout} \n#{stderr}"