refactor(updater): conform to new backend interfaces (#90)

This commit is contained in:
Felix Angelov
2023-03-17 13:00:35 -05:00
committed by GitHub
parent 1cf8aa9662
commit e91f2dbaac
14 changed files with 102 additions and 133 deletions
+11 -10
View File
@@ -1,38 +1,39 @@
name: Dart Package Workflow
description: Build and test your Dart packages.
inputs:
concurrency:
required: false
type: number
default: 4
default: "4"
description: The value of the concurrency flag (-j) used when running tests
coverage_excludes:
required: false
type: string
default: ""
description: Globs to exclude from coverage
dart_sdk:
required: false
type: string
default: "stable"
description: "The dart sdk version to use"
working_directory:
required: false
type: string
default: "."
description: The working directory for this workflow
min_coverage:
required: false
type: number
default: 100
default: "100"
description: The minimum coverage percentage value
analyze_directories:
required: false
type: string
default: "lib test"
description: Directories to analyze
report_on:
required: false
type: string
default: "lib"
description: Directories to report on when collecting coverage
platform:
required: false
type: string
default: "vm"
description: Platform to use when running tests
runs:
using: "composite"
+21
View File
@@ -0,0 +1,21 @@
name: Rust Crate Workflow
description: Build and test your Rust crate
inputs:
working_directory:
required: false
default: "."
description: The working directory for this workflow.
runs:
using: "composite"
steps:
- name: Build
working-directory: ${{ inputs.working_directory }}
shell: ${{ inputs.shell }}
run: cargo build --verbose
- name: Test
working-directory: ${{ inputs.working_directory }}
shell: ${{ inputs.shell }}
run: cargo test --verbose
+38 -6
View File
@@ -17,7 +17,8 @@ jobs:
pull-requests: read
outputs:
needs_build: ${{ steps.needs_build.outputs.changes }}
needs_dart_build: ${{ steps.needs_dart_build.outputs.changes }}
needs_rust_build: ${{ steps.needs_rust_build.outputs.changes }}
needs_verify: ${{ steps.needs_verify.outputs.changes }}
name: 👀 Detect Changes
@@ -28,7 +29,7 @@ jobs:
- uses: dorny/paths-filter@v2
name: Build Detection
id: needs_build
id: needs_dart_build
with:
filters: |
shorebird_cli:
@@ -42,6 +43,15 @@ jobs:
- ./.github/actions/dart_package
- packages/shorebird_code_push_protocol/**
- uses: dorny/paths-filter@v2
name: Build Detection
id: needs_rust_build
with:
filters: |
updater:
- ./.github/actions/rust
- updater/**
- uses: dorny/paths-filter@v2
name: Verify Detection
id: needs_verify
@@ -51,13 +61,13 @@ jobs:
- ./.github/actions/dart_package
- packages/shorebird_cli/**
build_packages:
build_dart_packages:
needs: changes
if: ${{ needs.changes.outputs.needs_build != '[]' }}
if: ${{ needs.changes.outputs.needs_dart_build != '[]' }}
strategy:
matrix:
package: ${{ fromJSON(needs.changes.outputs.needs_build) }}
package: ${{ fromJSON(needs.changes.outputs.needs_dart_build) }}
runs-on: ubuntu-latest
@@ -72,6 +82,27 @@ jobs:
with:
working_directory: packages/${{ matrix.package }}
build_rust_crates:
needs: changes
if: ${{ needs.changes.outputs.needs_rust_build != '[]' }}
strategy:
matrix:
crate: ${{ fromJSON(needs.changes.outputs.needs_rust_build) }}
runs-on: ubuntu-latest
name: 🦀 Build ${{ matrix.crate }}
steps:
- name: 📚 Git Checkout
uses: actions/checkout@v3
- name: 🦀 Build ${{ matrix.package }}
uses: ./.github/actions/rust_crate
with:
working_directory: ${{ matrix.crate }}
verify_packages:
needs: changes
if: ${{ needs.changes.outputs.needs_verify != '[]' }}
@@ -94,7 +125,8 @@ jobs:
working_directory: packages/${{ matrix.package }}
ci:
needs: [semantic_pull_request, build_packages, verify_packages]
needs:
[semantic_pull_request, build_dart_packages, build_rust_crates, verify_packages]
if: ${{ always() }}
runs-on: ubuntu-latest