๐Ÿ“ฆ techouse / alfred-react-docs

๐Ÿ“„ release.yml ยท 92 lines
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92name: Release package

on:
  push:
    tags:
      - 'v[0-9]+.[0-9]+.[0-9]+*'
defaults:
  run:
    shell: bash
env:
  PUB_ENVIRONMENT: bot.github
permissions: read-all

jobs:
  build:
    name: "Build"
    strategy:
      matrix:
        os: [macos-latest, macos-15-intel]
      fail-fast: true
    uses: ./.github/workflows/build.yml
    with:
      runs-on: ${{ matrix.os }}
    secrets: inherit
  github_release:
    name: "Github Release"
    needs: build
    environment: build
    runs-on: ubuntu-latest
    permissions:
      contents: write
    steps:
      - uses: actions/checkout@v6
      - name: Read pubspec.yaml version
        id: read_pubspec_version
        run: |
          set -e
          VERSION=$(yq -r '.version' pubspec.yaml)
          echo "VERSION=$VERSION" >> $GITHUB_ENV
      - name: Get arm64 artifact
        id: download_arm64_artifact
        uses: actions/download-artifact@v7
        env:
          WORKFLOW_NAME: ${{ vars.WORKFLOW_NAME }}
          ARCH: arm64
        with:
          name: ${{ env.WORKFLOW_NAME }}-v${{ env.VERSION }}-${{ env.ARCH }}
          path: ${{ runner.temp }}/download
      - name: Get x86_64 artifact
        id: download_x86_64_artifact
        uses: actions/download-artifact@v7
        env:
          WORKFLOW_NAME: ${{ vars.WORKFLOW_NAME }}
          ARCH: x86_64
        with:
          name: ${{ env.WORKFLOW_NAME }}-v${{ env.VERSION }}-${{ env.ARCH }}
          path: ${{ runner.temp }}/download
      - name: Unzip artifacts
        env:
          WORKFLOW_NAME: ${{ vars.WORKFLOW_NAME }}
        id: unzip_artifacts
        working-directory: ${{ runner.temp }}/download
        run: |
          set -e
          for ARCH in "arm64" "x86_64"; do
            mkdir -p $ARCH
            unzip -q ${{ env.WORKFLOW_NAME }}-v${{ env.VERSION }}-${ARCH}.zip -d $ARCH
          done
      - name: Create Alfred Workflow
        id: create_alfred_workflow
        env:
          WORKFLOW_NAME: ${{ vars.WORKFLOW_NAME }}
        working-directory: ${{ runner.temp }}/download
        run: |
          set -e
          mv x86_64/workflow arm64/workflow_intel
          pushd arm64
          find . -not -path "./*_cache*" -exec zip --symlinks "../${WORKFLOW_NAME}-v${VERSION}.alfredworkflow" {} +
          popd
      - name: Release
        id: release_workflow
        env:
          WORKFLOW_NAME: ${{ vars.WORKFLOW_NAME }}
        uses: softprops/action-gh-release@v2
        with:
          files: ${{ runner.temp }}/download/${{ env.WORKFLOW_NAME }}-v${{ env.VERSION }}.alfredworkflow
      - name: Clean up
        id: clean_up
        if: ${{ always() }}
        run: |
          rm -rf $RUNNER_TEMP/download