package #42
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: "package" | |
| on: | |
| schedule: | |
| - cron: "0 12 * * 3" | |
| pull_request: | |
| push: | |
| branches: | |
| - main | |
| - develop | |
| - 'release/**' | |
| paths: | |
| - '**.dart' | |
| - './*.yaml' | |
| - .github/workflows/_base-dart.yaml | |
| - .github/workflows/package.yaml | |
| release: | |
| types: [published] | |
| # call the base workflow with the package path | |
| jobs: | |
| is-flutter: | |
| uses: ./.github/workflows/_base-has_flutter.yaml | |
| with: | |
| path: '.' | |
| dart: | |
| needs: is-flutter | |
| if: needs.is-flutter.outputs.is_flutter == '0' | |
| uses: ./.github/workflows/_base-dart.yaml | |
| with: | |
| path: '.' | |
| flutter: | |
| needs: is-flutter | |
| if: needs.is-flutter.outputs.is_flutter == '1' | |
| uses: ./.github/workflows/_base-flutter.yaml | |
| with: | |
| path: '.' | |
| publish: | |
| runs-on: ubuntu-latest | |
| # Needs dart or flutter job to complete successfully, only skipped if either is failed, but not skipped | |
| needs: [dart, flutter] | |
| if: ${{ always() && (needs.dart.result == 'success' || needs.flutter.result == 'success') && (needs.dart.result != 'failure' && needs.flutter.result != 'failure') && (github.event_name == 'release' && github.event.action == 'published' || github.ref == 'refs/heads/main') }} | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: dart-lang/setup-dart@v1 | |
| with: | |
| sdk: stable | |
| - name: "Get dependencies" | |
| run: dart pub get | |
| - name: Publish to pub.dev (dry run) | |
| run: dart pub publish --dry-run |