Skip to content

Publish to pub.dev

Publish to pub.dev #59

Workflow file for this run

name: Publish to pub.dev
on:
workflow_dispatch:
inputs:
mix:
type: boolean
description: publish mix
default: false
mix_lint:
type: boolean
description: publish mix_lint
default: false
mix_annotations:
type: boolean
description: publish mix_annotations
default: false
mix_generator:
type: boolean
description: publish mix_generator
default: false
remix:
type: boolean
description: publish remix
default: false
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
# publish-dry-run:
# runs-on: ubuntu-latest
# steps:
# - name: Checkout mix repo
# uses: actions/checkout@v4
# - name: Install FVM
# shell: bash
# run: |
# curl -fsSL https://fvm.app/install.sh | bash
# fvm use ${{ inputs.flutter-version }} --force
# - uses: kuhnroyal/flutter-fvm-config-action@v2
# id: fvm-config-action
# - uses: subosito/flutter-action@v2
# with:
# flutter-version: ${{ steps.fvm-config-action.outputs.FLUTTER_VERSION }}
# channel: ${{ steps.fvm-config-action.outputs.FLUTTER_CHANNEL }}
# - name: Setup Melos
# uses: bluefireteam/melos-action@v3
# - name: Run melos fix
# run: |
# if [[ "${{ github.event.inputs.mix_lint }}" == "true" ]]; then
# cd packages/mix_lint && dart pub publish --dry-run && cd ../..
# fi
# if [[ "${{ github.event.inputs.mix_annotations }}" == "true" ]]; then
# cd packages/mix_annotations && dart pub publish --dry-run && cd ../..
# fi
# if [[ "${{ github.event.inputs.mix_generator }}" == "true" ]]; then
# cd packages/mix_generator && dart pub publish --dry-run && cd ../..
# fi
# if [[ "${{ github.event.inputs.mix }}" == "true" ]]; then
# cd packages/mix && dart pub publish --dry-run && cd ../..
# fi
# if [[ "${{ github.event.inputs.remix }}" == "true" ]]; then
# cd packages/remix && dart pub publish --dry-run && cd ../..
# fi
# shell: bash
# test-mincompat:
# needs: [publish-dry-run]
# runs-on: ubuntu-latest
# steps:
# - name: Checkout mix repo
# uses: actions/checkout@v4
# - name: Run Tests
# uses: ./.github/actions/test/
# with:
# token: ${{ secrets.GITHUB_TOKEN }}
# flutter-version: 'mincompat'
# test-stable:
# needs: [publish-dry-run]
# runs-on: ubuntu-latest
# steps:
# - name: Checkout mix repo
# uses: actions/checkout@v4
# - name: Run Tests
# uses: ./.github/actions/test/
# with:
# token: ${{ secrets.GITHUB_TOKEN }}
prepare-matrix:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- id: set-matrix
run: |
matrix=()
if [[ "${{ github.event.inputs.mix_lint }}" == "true" ]]; then
matrix+=('{"name": "mix_lint", "path": "packages/mix_lint"}')
fi
if [[ "${{ github.event.inputs.mix_annotations }}" == "true" ]]; then
matrix+=('{"name": "mix_annotations", "path": "packages/mix_annotations"}')
fi
if [[ "${{ github.event.inputs.mix_generator }}" == "true" ]]; then
matrix+=('{"name": "mix_generator", "path": "packages/mix_generator"}')
fi
if [[ "${{ github.event.inputs.mix }}" == "true" ]]; then
matrix+=('{"name": "mix", "path": "packages/mix"}')
fi
if [[ "${{ github.event.inputs.remix }}" == "true" ]]; then
matrix+=('{"name": "remix", "path": "packages/remix"}')
fi
echo "matrix=$(IFS=,; echo "[${matrix[*]}]")" >> $GITHUB_OUTPUT
publish:
needs: [test-mincompat, test-stable, publish-dry-run, prepare-matrix]

Check failure on line 126 in .github/workflows/publish.yml

View workflow run for this annotation

GitHub Actions / Publish to pub.dev

Invalid workflow file

The workflow is not valid. .github/workflows/publish.yml (Line: 126, Col: 13): Job 'publish' depends on unknown job 'test-mincompat'. .github/workflows/publish.yml (Line: 126, Col: 29): Job 'publish' depends on unknown job 'test-stable'.
environment: Production
runs-on: ubuntu-latest
strategy:
max-parallel: 1
matrix:
package: ${{fromJSON(needs.prepare-matrix.outputs.matrix)}}
steps:
- uses: actions/checkout@v4
- name: Echo matrix
run: echo "${{ matrix.package.name }} and ${{ matrix.package.path }}"
shell: bash
# - name: '>> publish ${{ matrix.package.name }} package to pub.dev <<'
# id: publish
# uses: k-paxian/dart-package-publisher@master
# with:
# accessToken: ${{ secrets.OAUTH_ACCESS_TOKEN }}
# refreshToken: ${{ secrets.OAUTH_REFRESH_TOKEN }}
# relativePath: ${{ matrix.package.path }}
# - name: 'Commit release tag'
# if: steps.publish.outputs.success
# uses: hole19/git-tag-action@master
# env:
# TAG: ${{steps.publish.outputs.package}}-${{steps.publish.outputs.localVersion}}
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}