Skip to content

Add expr module (#3) #51

Add expr module (#3)

Add expr module (#3) #51

Workflow file for this run

name: test + publish + release
on:
push:
paths-ignore:
- "**.md"
- "LICENSE"
# tags:
# - 'v[0-9]+.[0-9]+.[0-9]+*' # tag pattern on pub.dev: 'v{{version}'
pull_request:
branches:
- main
paths-ignore:
- "**.md"
- "LICENSE"
jobs:
test-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: setup
run: |
sudo apt-get update
sudo apt-get install -y gcc-aarch64-linux-gnu \
gcc-arm-linux-gnueabihf gcc-i686-linux-gnu \
gcc-riscv64-linux-gnu ninja-build
- uses: subosito/flutter-action@v2
with:
channel: "master"
- name: test
run: |
cd "${{github.workspace}}"
dart test
test-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: setup
run: |
choco install ninja
- uses: subosito/flutter-action@v2
with:
channel: "master"
- name: test
run: |
cd "${{github.workspace}}"
dart test
test-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: setup
run: |
brew install ninja
- uses: subosito/flutter-action@v2
with:
channel: "master"
- name: test
run: |
cd "${{github.workspace}}"
dart test
publish:
name: Publish
if: startsWith(github.ref, 'refs/tags/v')
needs: [test-linux, test-windows, test-macos]
permissions:
id-token: write # Required for authentication using OIDC
runs-on: ubuntu-latest
environment: pub.dev
steps:
- uses: actions/checkout@v4
- uses: dart-lang/setup-dart@v1
with:
sdk: dev
- name: Install dependencies
run: dart pub get
- name: Publish
run: dart pub publish --force
release:
name: Release
if: startsWith(github.ref, 'refs/tags/v')
needs: [test-linux, test-windows, test-macos]
permissions:
contents: write # https://github.com/softprops/action-gh-release/issues/236
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
- name: release
uses: softprops/action-gh-release@v1
with:
draft: false
prerelease: false
generate_release_notes: true