Skip to content

chore: drop Ruby 2.7 build #36

chore: drop Ruby 2.7 build

chore: drop Ruby 2.7 build #36

Workflow file for this run

name: Release
on:
push:
branches:
- main
jobs:
check:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: GoogleCloudPlatform/release-please-action@v3
id: release
with:
release-type: ruby
package-name: tantiny
bump-minor-pre-major: true
bump-patch-for-minor-pre-major: true
extra-files: |
lib/tantiny/version.rb
Cargo.toml
outputs:
tag_name: ${{ steps.release.outputs.tag_name }}
release_created: ${{ steps.release.outputs.release_created }}
publish:
needs: check
if: ${{ needs.check.outputs.release_created }}
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.1
bundler-cache: true
- name: Install dependencies
run: bundle install
- name: Transpile source source with RubyNext
run: bundle exec rake nextify
- name: Publish to RubyGems
run: |
mkdir -p $HOME/.gem
touch $HOME/.gem/credentials
chmod 0600 $HOME/.gem/credentials
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
gem build *.gemspec
gem push *.gem
env:
GEM_HOST_API_KEY: "${{ secrets.RUBYGEMS_AUTH_TOKEN }}"
compile:
needs: check
if: ${{ needs.check.outputs.release_created }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
ruby: ['3.1']
os: ['ubuntu-latest', 'macos-latest']
permissions:
contents: write
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: '1.77'
- name: Install dependencies
run: bundle install
- name: Cache crate
uses: actions/cache@v2
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: cargo-${{ hashFiles('**/Cargo.lock') }}-ruby-${{ matrix.ruby }}-os-${{ matrix.os }}
- name: Build crate
run: bundle exec rake build
- name: Create tarball
run: bundle exec rake thermite:tarball
- name: Upload to GitHub Releases
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ needs.check.outputs.tag_name }}
files: tantiny-*.tar.gz
- name: Try installing without Cargo
run: |
gem uninstall tantiny
CARGO=fake gem install tantiny