/
githubmirror
/
fastlane
Обзор
Документация
Войти
/
githubmirror
/
fastlane
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
.github/workflows/module_test.yml
73 строки
2 KB
Connor Tumbleson
[core] Support for Ruby 4 (+ testing) (#29849)
24 июл 2026, 22:04
Не верифицирован
24 июл 2026, 22:04
23355df
Код
Авторство
О чём код?
name: Module Test on: push: branches: - master pull_request: concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: module_tests: name: Module tests (Ruby ${{ matrix.ruby }} on ${{ matrix.os }}) env: GEM_HOME: ${{ github.workspace }}/sandbox_gems GEM_PATH: ${{ github.workspace }}/sandbox_gems strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] ruby: ['3.3', '3.4', '4.0'] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v7 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - name: Build gem id: build shell: bash run: | GEM_FILE=$(gem build fastlane.gemspec | grep "File:" | awk '{print $2}') echo "gem_file=$GEM_FILE" >> $GITHUB_OUTPUT - name: Install gem in isolated GEM_HOME shell: bash run: gem install --no-document --env-shebang "${{ steps.build.outputs.gem_file }}" - name: Dump installed gems shell: bash run: gem list - name: Run module tests against built gem shell: bash run: ./.github/scripts/run_module_tests.sh - name: Sanity check fastlane CLI shell: bash run: | set -euo pipefail export PATH="$GEM_HOME/bin:$PATH" # Verify executables ruby -e "require 'rubygems/package'; spec = Gem::Package.new('${{ steps.build.outputs.gem_file }}').spec; expected = %w(bin-proxy fastlane match_file); puts \"Gem executables: #{spec.executables}\"; exit(1) unless spec.executables.sort == expected.sort" # Determine installed fastlane version from the gem FASTLANE_VERSION=$(ruby -e "require 'fastlane'; puts Fastlane::VERSION") echo "Detected fastlane version: ${FASTLANE_VERSION}" # Check version output VERSION_OUTPUT=$(fastlane --version) echo "fastlane --version => ${VERSION_OUTPUT}" if [[ "${VERSION_OUTPUT}" != *"fastlane ${FASTLANE_VERSION}"* ]]; then echo "Expected 'fastlane ${FASTLANE_VERSION}' in version output" >&2 exit 1 fi # Run basic command fastlane actions